еще задачка

Все, что вы хотели знать о программизме, но боялись спросить.
Ответить
Аватара пользователя
ajkj3em
Маньяк
Сообщения: 2063
Зарегистрирован: 12 ноя 2006, 06:53

еще задачка

Сообщение ajkj3em »

найти целое положительное число, для которого hex представление
лексиграфически совпадает с десятичным без последней цифры. то
есть, если число N выглядит как

Код: Выделить всё

   Dm .. D2 D1 D0 
в десятичной системе (где Di цифра от 0 до 9), то в hex'e оно
выглядит как

Код: Выделить всё

   Dm .. D2 D1
Woozy
Завсегдатай
Сообщения: 278
Зарегистрирован: 03 мар 2003, 08:55
Откуда: RU->BC->ON->FI -> Chicago, IL -> Seattle, WA

Уравнение?

Сообщение Woozy »

Начал было рисовать цикл рутинно ищущий искомый результат, пока не найдёт первое число в диапазоне 1...N отвечающее условие. Не очень трудно, просто в лоб - значит много повторяющихся действий, как деление. Оптимизировать можно, но...

Уравнение надо написать, похоже. Я представляю для числа определённой разрядности такое уравнение. Или таки в лоб решать?
Аватара пользователя
ajkj3em
Маньяк
Сообщения: 2063
Зарегистрирован: 12 ноя 2006, 06:53

Re: Уравнение?

Сообщение ajkj3em »

Woozy писал(а):Начал было рисовать цикл рутинно ищущий искомый результат, пока не найдёт первое число в диапазоне 1...N отвечающее условие. Не очень трудно, просто в лоб - значит много повторяющихся действий, как деление. Оптимизировать можно, но...

Уравнение надо написать, похоже. Я представляю для числа определённой разрядности такое уравнение. Или таки в лоб решать?
ну здрасте, ессно не в лоб. это ж не vb форум :)
XMan
Частый Гость
Сообщения: 16
Зарегистрирован: 05 июл 2003, 09:23

Сообщение XMan »

Если не секрет - решения вообще существуют ? А то если верить графикам, то они пересекаются только в нуле. Потом график десятичных чисел ступеньками уходит вверх, а hex совпадает с "y=x".
Может я просто графики неправильно нарисовал ? :)

PS. Я так понял, нужно, чтобы число 12345 было реально равно числу 1234h и при этом еще совпадало во всех старших десятичных разрядах (1, 2, 3 и 4) ?
Аватара пользователя
ajkj3em
Маньяк
Сообщения: 2063
Зарегистрирован: 12 ноя 2006, 06:53

Сообщение ajkj3em »

Угу, правильно понял :) Нету таких чисел. Фишка в том,
что если аккуратно выписать уравнения, то получится,
что искомое число не может быть больше 4 (5?) разрядов.
дальше - тупым перебором. если же часть с уравнениями
skip'нуть, то не понятно по какому критерию заканчивать
перебор ...
XMan
Частый Гость
Сообщения: 16
Зарегистрирован: 05 июл 2003, 09:23

Сообщение XMan »

:)
И много у тебя таких задачек ? И откуда они взялись ? :)
Аватара пользователя
Циник
Завсегдатай
Сообщения: 442
Зарегистрирован: 17 фев 2003, 17:17

Сообщение Циник »

drain bamage писал(а):Нету таких чисел.
Ты когда шутишь, товарищ, не забывай смайлики ставить :twisted:
что если аккуратно выписать уравнения, то получится,
что искомое число не может быть больше 4 (5?) разрядов.
Тут, товарищ Дрэйн, не аккуратно выписывать надо, а просто подумать да почеркать маленько на промокашке, может быть.

7 десятичных разрядов, не больше и не меньше.
дальше - тупым перебором.
Ага. 5 минут на написание программы, 3 секунды на счет.
если же часть с уравнениями
skip'нуть, то не понятно по какому критерию заканчивать
перебор ...
Уравнения... критерии... Будь проще, товарищ - как перестались находиться решения, так все, заканчивай перебор. :twisted:

Хорошая задача, впрочем, товарищ. Давай еще :twisted:
Аватара пользователя
ajkj3em
Маньяк
Сообщения: 2063
Зарегистрирован: 12 ноя 2006, 06:53

Сообщение ajkj3em »

Циник писал(а):
drain bamage писал(а):Нету таких чисел.
Ты когда шутишь, товарищ, не забывай смайлики ставить :twisted:
в смысле ?
Аватара пользователя
Циник
Завсегдатай
Сообщения: 442
Зарегистрирован: 17 фев 2003, 17:17

Сообщение Циник »

drain bamage писал(а):
Циник писал(а):
drain bamage писал(а):Нету таких чисел.
Ты когда шутишь, товарищ, не забывай смайлики ставить :twisted:
в смысле ?
В смысле такие смешные картинки, типа :), :D, :wink:, или даже :twisted:
А то неискушенные читатели могут подумать, что таких чисел и вправду нет.
Аватара пользователя
ajkj3em
Маньяк
Сообщения: 2063
Зарегистрирован: 12 ноя 2006, 06:53

Сообщение ajkj3em »

Циник писал(а):
drain bamage писал(а):
Циник писал(а):
drain bamage писал(а):Нету таких чисел.
Ты когда шутишь, товарищ, не забывай смайлики ставить :twisted:
в смысле ?
В смысле такие смешные картинки, типа :), :D, :wink:, или даже :twisted:
А то неискушенные читатели могут подумать, что таких чисел и вправду нет.
Дух (duh), тов. Цыник, ты совершенно прав насчет смайлов. Мой мега-переборщик сбойнул и я таки честно полагал, что таких чисел нет. Теперь однако они есть .. гы
Аватара пользователя
Циник
Завсегдатай
Сообщения: 442
Зарегистрирован: 17 фев 2003, 17:17

Сообщение Циник »

Вот, товарищи, все решения задачи:

Код: Выделить всё

 1   1079653
 2   1081713
 3   1122966
 4   1123079
 5   1123080
 6   2246166
 7   3369253
 8   3371313
 9   3412566
10  4494393
11  4494400
12  4535653
13  5658739
14  5658740
15  5660793
16  5660800
17  5702166
18  6783879
19  6783880
20  6784000
21  6825253
22  7948339
23  7948340
24  7950393
25  7950400
Возникает интересный вопрос - почему они все оканчиваются только на 0, 3, 6 и 9? По какому такому закону?

А какие еще интересности, неслучайности и закономерности вы видите в этих решениях, товарищи?
ilid
Завсегдатай
Сообщения: 255
Зарегистрирован: 19 мар 2003, 13:31

Сообщение ilid »

Я смог показать почему 7-значное число, ,почему меньший порядок невозможен, почему цифра высшего порядка не может быть больше 7. Видимо если отматывать дальше, можно найти почему последняя цифра 0,3,6,9 - её значение зависит лишь от D1. Уравнение даёт всю эту информацию. Пошёл как я спать.
ilid
Завсегдатай
Сообщения: 255
Зарегистрирован: 19 мар 2003, 13:31

Сообщение ilid »

У меня тоже есть хорошая задачка, но она конечно намного проще предыдущей:

Имеется 2 верёвки, одна сгорает за 1 час, вторая за пол-часа. Горят верёвки с переменной скоростью, только конечное время известно. Дан коробок с бесчисленным количеством спичек. Надо отмерить 45 минут.
Аватара пользователя
Циник
Завсегдатай
Сообщения: 442
Зарегистрирован: 17 фев 2003, 17:17

Сообщение Циник »

ilid писал(а):У меня тоже есть хорошая задачка, но она конечно намного проще предыдущей:
Xорошие задачки надо задавать в отдельном треде, товарищ Илид.
Ответить