Как стать автором
Обновить

Комментарии 41

Надо уточнить задачу: цифре сответствует не более чем одно буква.
Решил, получил два решения, но различия не сильные.
По-моему не такая и сложная задача...
Покажите ответ. Я скажу правильно ли.
СОРКДИНТА
970284315
970384215

еще есть тривиальное решение - все нули, но это если одной цифре может соответствовать любое количество букв.
(надо уточнать условие)
Извиняюсь за сумбурность кода, писалось за 5 минут:
skipped. Невозможно же код постить, что за ерунда с оформлением? Кому интересно - там была куча вложенных ифов, пробегающих по всем возможным комбинациям различных цифр и проверяющих, подходят ли они под наше условие. Я знаю, что можно было написать куда благородней, но так получается быстрее - копи-паст всё еще самый хороший инструмент быстрой разработки :)

В итоге получаем 4-ре ответа:
СОРКДИНТА
970284315
970284517
970384215
970584217
---------
Кажется, правильно.
P.S. Я бы решил это и без компьютера, но так куда быстрее. А я по жизни убеждён, что главное - практический результат.
Решено неверно
СОРОК+ОДИН=ТРИСТА. Берём ответ №1: СОРКДИНТА = 970284315
Подставим: 97072+7843=104915 . Равенство выполняется. В чём моя ошибка?

P.S. Остальные 3 не проверял, но там лишь спекуляция последними цифрами.
//Хабр опять глючит. Если опять выдаст кучу моих постов - заранее прошу прощения.

Проверьте. Подставив, получим: 97072+7843=104915. Выполняется. И где ошибка?
Да, этот ответ правильный.
На предыдущий пост я написал - РЕШЕНО НЕВЕРНО, потому что два ответа из 4-ех неверны. Нет, я не против, конечно, каждый решает как умеет... :-) Вы бы на олимпиаде по математике в 5-ом классе тоже компьютер попросили? ;-)
Извиняюсь за сумбурность кода, писалось за 5 минут:
skipped. Невозможно же код постить, что за ерунда с оформлением? Кому интересно - там была куча вложенных ифов, пробегающих по всем возможным комбинациям различных цифр и проверяющих, подходят ли они под наше условие. Я знаю, что можно было написать куда благородней, но так получается быстрее - копи-паст всё еще самый хороший инструмент быстрой разработки :)

В итоге получаем 4-ре ответа:
СОРКДИНТА
970284315
970284517
970384215
970584217
---------
Кажется, правильно.
P.S. Я бы решил это и без компьютера, но так куда быстрее. А я по жизни убеждён, что главное - практический результат.
P.P.S. Какие-то internal error ы на хабре. Я пост писал дольше, чем решал :)
Блин, что за напасть. Internal error на хабре. Я задачу решал меньше, чем пост пытаюсь разместить :) По частям:

"Извиняюсь за сумбурность кода, писалось за 5 минут:
skipped. Невозможно же код постить, что за ерунда с оформлением? Кому интересно - там была куча вложенных ифов, пробегающих по всем возможным комбинациям различных цифр и проверяющих, подходят ли они под наше условие. Я знаю, что можно было написать куда благородней, но так получается быстрее - копи-паст всё еще самый хороший инструмент быстрой разработки :)"
Мда.... Честное слово, это не я, это НЛО.
А в пятом классе ты решал математику с калькулятором? :)
Ну тогда понятно откуда берутся программеры :)
Нет. Я просто трезво оцениваю своё время. Для того, чтобы решить эту задачку вручную потребуется больше 5 минут. А так как небольшое улучшение программного кода вполне может привести к созданию универсального решателя подобных задач. Ну, и признаюсь, мне неинтересны задачи, которые может решить робот, ибо уподобляться не хочу.
Так все задачи начальных классов может решить робот. Неужели будешь сыну калькулятор покупать?
Он неправильно решил. Калькулятор тут не поможет.
Нет, SerGuitar, бот - это ты. Потому что ничего умнее и менее ресурсоемкое чем метод тыка придумать не в состоянии. И то что ты быстро нашел ответ здесь, где другие заинтересованные (и не такие "умные") ломали голову часами только доказывает что "против лома нет приема" и таким прямая дорога на конвеер или в "программисты". Потому что алгоритм перебора это то, что делает обезьяна когда щелкая на печатной машинке вдруг получает строчку из Шекспира. Гениально.

А предыдущий коммент ты не понял вообще. Купи сыну калькулятор когда он будет проходить сложение в столбик, и когда (если вдруг) твое чудо поедет на олимпиаду и разумеется провалит ее - купи ему компьютер и научи писать на Delphi.
Я буду умнее и удалюсь из дискуссии, которая переходит в подобный тон. Можете считать это сливом, но вы всё равно не поймёте меня, видимо.
P.S. У меня еще нет сына. Поэтому считаю комментарии в стиле "и разумеется провалит ее" пустыми.
OMG, SerGuitar, прости :)
Коммент аддресован к tilarids.
Для того, чтобы написать алгоритм, нужно сначала научиться мыслить, как машина. Я это уже умею. Потому я и предпочитаю более высокий уровень.
Сына(когда он будет) я сначала научу думать, а потом предоставлю выбор.
Если ты это понимаешь, то почему думаешь что цель задач с олимпиады - получить правильный ответ? Я полагаю что цель все же - найти правильное решение, что не одно и то же. И скорее с помощью "думать", а не "подбирать". Написать программу чтобы подобрать как видишь много думать и не пришлось.
>> чтобы написать алгоритм, нужно сначала научиться мыслить, как машина. Я это уже умею.
:) машины не мыслят, не пишут алгоритмы. Но "мыслить" как машина ты похоже умеешь :)
Надо подумать. С ходу вижу три цифры - Т - 1, С - 9, Р - 0
Осталось совсем чуть-чуть. ;-)
по моему это похоже на задачу из tute Test)
там было WWWDOT - GOOGLE = DOTCOM и условие что E и M взаимозаменяемые
суть надо записать это в "столбик" и "решить":
WWWDOT
GOOGLE
-----
DOTCOM

Е=3, M=6, T=9 потом можно написать прогу (ну или в уме) которая подберет остальные...
в смысле Google Labs Aptitude Test
Что значит E,M взаимозаменяемые?
То что есть два решения, одно где E=3, М=6 и где Е=6, М=3
Блииин, ностальгия сразу небольшая:)
Как давно это было, мои любимые типы задач на олимпиадах. ЛЮбимые именно за то, что никаких сложностей это у меня не вызывало)
я думал, что все буквы зашифрованы как на кнопках телефона, оказалось не так.
по аналогии с тел. кнопками пытался разбить алфавит, но результат тоже отрицательный.

вопрос к АВТОРУ поста: если здесь закономерность в шифровке букв или нет?
Нет. Всё, что нужно, попробовать записать в столбик.
Кто кароче?
K И O Д P C A T"
t = 1
ans = (0..9).to_a
(ans-[t]).each do |h|
(ans-[t,h]).each do |k|
a = h+k
(ans-[t,h,k,a%10]).each do |i|
(ans-[t,h,k,a%10,i]).each do |o|
next if (i+o+a/10)%10!=1
(ans-[t,h,k,a%10,i,o]).each do |d|
(ans-[t,h,k,a%10,i,o,d]).each do |r|
c = d+r+(i+o)/10
next if [t,h,k,a%10,i,o,d,r].include? c%10
z = o*2+c/10
next if z%10!=i || (z/10+c%10)%10!=r
puts [h,k,i,o,d,r,c%10,a%10,1].join(' ')
end
end
end
end
end
end
Все сломалось :(
Вопщем тут -> o.se/131609
СОРОК + ОДИН = ТРИСТА
9**** + **** = ***9**
9**** + **** = 1**91*
9*0** + **** = 10*91*
9707* + 7*** = 10*91*
9707* + 7*4* = 10491*
9707* + 784* = 10491*
9707* + 784* = 104915
К или Н = 2 или 3
два решения...
А вы допускали, что Т = 0 ?
Тогда нет решения, а была б хорошая уловка :)
решений как минимум два:
0 - Р
1 - Т
2 - К (или Н)
3 - Н (или К)
4 - И
5 - А
7 - О
8 - Д
9 - С

задача не сложная... ушло около 5-10 мин
Да, требуется 5 минут (и салфетка). Единственная математика заключалась в решении системы уравнений:

О + И = 11
О + О = 10 + И

Для 5-го класса задачка хорошая, по-моему. Средней сложности.
ну не знаю... может у меня было неправильное детство, но я в нём таких задачек десятки и наверно даже сотни перерешал. "Фишка" таких задачек улавливается очень быстро, после чего они решаются в 2 минуты :)
ИМХО, уровень олимпиады низкий...
5-ый класс, че там.
Я читал комментарии дольше, чем программу писал. =)
Я решил поломать все стереотипы и написал это:
http://huze.ru/40+1=300.txt
32768 итерация - результат. Просьба не воспринимать код всерьёз. =)
есть еще известная вариация БАРБОС + БОБИК = СОБАКИ
Зарегистрируйтесь на Хабре , чтобы оставить комментарий

Публикации

Истории