?

Log in

No account? Create an account

Previous Entry | Next Entry

УДАР+УДАР=ДРАКА

Вопрос навеян последней записью с числовыми ребусами И. Весеннего. Что вы знаете об алгоримизации решения таких ребусов? Если есть ссылки на статьи, было бы здорово. Ну, или просто идеями поделитесь.

З. Ы. ЖЖ опять тормозит несколько дней. Это у всех так, или только в гадюкинских краях?

Tags:

Comments

( 30 comments — Leave a comment )
potan
Oct. 4th, 2010 07:37 am (UTC)
Перебор с возвратом.
Ввиде программы на Prolog :-).
Кстати, в книжках про Mozart/Oz решение ребусов часто приводят как пример программирования в ограничениях.
fregimus
Oct. 4th, 2010 07:38 am (UTC)
Это-то само собой. Мне бы побыстрее.
(no subject) - potan - Oct. 4th, 2010 07:49 am (UTC) - Expand
Одна тонкость - my_tribune - Oct. 4th, 2010 08:35 am (UTC) - Expand
(no subject) - slobin - Oct. 4th, 2010 12:08 pm (UTC) - Expand
(no subject) - fregimus - Oct. 4th, 2010 04:00 pm (UTC) - Expand
timur0
Oct. 4th, 2010 07:45 am (UTC)
была когда-то статья в "Кванте", не помню года (не позже 93). идея была в ограничениях - в заголовочном примере очевидно, что Д = 1, У >= 5. а потом перебор по жадному алгоритму - если мы определились со старшими разрядами, то на долю младших остается мало вариантов.
fregimus
Oct. 4th, 2010 08:04 am (UTC)
Угу. Мне вот алгоритмы извлечения этих «очевидностей» как раз и интересны.
(no subject) - timur0 - Oct. 4th, 2010 09:29 am (UTC) - Expand
(no subject) - fregimus - Oct. 4th, 2010 09:36 am (UTC) - Expand
(no subject) - timur0 - Oct. 4th, 2010 06:50 pm (UTC) - Expand
(no subject) - fregimus - Oct. 4th, 2010 07:07 pm (UTC) - Expand
(Deleted comment)
fregimus
Oct. 4th, 2010 08:35 am (UTC)
Мне интересно, как эта задача обобщается. В системе счисления по основанию 100 все уже не так радужно.
(Deleted comment)
(no subject) - fregimus - Oct. 4th, 2010 10:05 am (UTC) - Expand
(no subject) - janatem - Oct. 4th, 2010 10:17 am (UTC) - Expand
fdo_eq
Oct. 4th, 2010 09:19 am (UTC)
Ну и какого черта! (извините за резкость формулировки)
http://fdo-eq.livejournal.com/247147.html
fregimus
Oct. 4th, 2010 09:44 am (UTC)
Н-да, промазал - my_tribune - Oct. 4th, 2010 09:48 am (UTC) - Expand
Re: Н-да, промазал - fdo_eq - Oct. 4th, 2010 11:01 am (UTC) - Expand
Ссылку поставил - my_tribune - Oct. 4th, 2010 11:18 am (UTC) - Expand
yarikas
Oct. 4th, 2010 11:05 am (UTC)
fregimus
Oct. 5th, 2010 09:51 am (UTC)
Я никогда не подписывался на кириличные (хосподи, слово-то какое!) услуги.
pingback_bot
Oct. 4th, 2010 06:48 pm (UTC)
Задача на умножение
User timur0 referenced to your post from Задача на умножение saying: [...] (вспомнилось по прочтении этого: http://fregimus.livejournal.com/121056.html [...]
pingback_bot
Oct. 6th, 2010 04:21 pm (UTC)
Программистский brainfuck
User plakhov referenced to your post from Программистский brainfuck saying: [...] ПИСАТЬ О вставьте название дисциплины, которая кажется им скучной". По мотивам записей 'а и (1 [...]
avkh
Oct. 6th, 2010 04:50 pm (UTC)
-- TSQL

create table #Digits (d int)

insert into #Digits (d) values (0)
insert into #Digits (d) values (1)
insert into #Digits (d) values (2)
insert into #Digits (d) values (3)
insert into #Digits (d) values (4)
insert into #Digits (d) values (5)
insert into #Digits (d) values (6)
insert into #Digits (d) values (7)
insert into #Digits (d) values (8)
insert into #Digits (d) values (9)

select
*
from
#Digits U
cross join #Digits D
cross join #Digits A
cross join #Digits R
cross join #Digits K
where
U.d<>D.d and U.d <> A.d and U.d <> R.d and U.d <> K.d
and D.d <> A.d and D.d <> R.d and D.d <> K.d
and A.d <> R.d and A.d <> K.d
and R.d <> K.d
and (1000*U.d+100*D.d+10*A.d+R.d) + (1000*U.d+100*D.d+10*A.d+R.d) = (10000*D.d+1000*R.d+100*A.d+10*K.d+A.d)

drop table #Digits

--------------
-- 8 1 2 6 5
-- 0 секунд
fregimus
Oct. 6th, 2010 07:36 pm (UTC)
Это нечестно: это ж не вы сами решаете. На прологе вообще три строчки, а умельцы, поди, в одну запишут. Да, оптимизатор SQL как раз и есть решатель таких задач. Кстати, 0 секунд — непонятно, быстро или медленно.

Вспомнил об одном из возможных методов решения таких задач: О-алгебры (буква О латинская, не ноль). Вам, как специалисту по БД, это навевает какие-нибудь ассоциации?
(no subject) - avkh - Oct. 6th, 2010 07:56 pm (UTC) - Expand
(no subject) - avkh - Oct. 6th, 2010 08:04 pm (UTC) - Expand
(no subject) - avkh - Oct. 6th, 2010 08:10 pm (UTC) - Expand
avkh
Oct. 6th, 2010 04:55 pm (UTC)
а блин, там с разными системами надо пробовать !
ну, это мне лень , но там просто
цикл закрутить и умножаит не на 10^k а на N^k
( 30 comments — Leave a comment )