kouzdra - August 26th, 2005
[Recent Entries][Archive][Friends][User Info]
06:16 pm
[Link] |
Компутерное Интересно, а почему на всяческих программистских конкурсах/олимпиадах etc так редко используется формат ICFP-шных контестов - когда дается "открытая" задача, а победителем объявляется тот, кто сумеет решить ее как можно лучше?
Мы недавно попробовали - придумываются задачи легко, и сохраняется стимул для "хорошего программирования" (что есть главная проблема всех подобных затей).
Конкретная задача (уже была использована):
"Написать программу, которая найдет за 5 минут наибольшую пару простых чисел-близнецов (т.е.отличающихся на 2). Найденные пары регистрируются библиотченой функцией register_result (a, b), которую можно вызывать несклько раз. результатом считается максимальная зарегистрированная пара"
На самом деле, простая-то она простая, но если учесть, что Вам надо не просто решить задачу, а решить ее лучше других - она довольно нетривиальна. Особенно если не знать точных характеристик компа, на котором оно будет считаться.
Вариант решения на Haskell, не оптимальный, но неплохой:
is_siblings n = null [m | m <- takeWhile (\x -> x*x <= n) (2:[3,5..]),
n `rem` m == 0 || (n+2) `rem` m == 0]
find_siblings_at n = [(k, k+2) | k <- [n, n-2 .. 3], is_siblings k]
main = print [(register_pair. head . find_siblings_at . round) (10.0 ** e - 1) | e <- [2.0, 3.0..]]
Upd: Немножко подумав, понял что есть способ заметно улучшить результат, исправив всего 2 символа. Догадайтесь, как.
|
|
07:36 pm
[Link] |
Оскомина чилийского чуда Интересная статья в "Эксперте" про либеральные чилийские пенсионные реформы:
Все же остальные ожидания оправдались еще меньше. Недавно было проведено исследование деятельности пенсионных фондов в Чили и выяснилось, что пенсии людей, которые остались в государственной системе, больше, чем у тех, кто ушел в частные фонды. Многие люди, перешедшие в частные фонды еще в восьмидесятых, сейчас, выйдя на пенсию, обнаружили, что жить на те деньги, которые им выплачивает фонд, просто невозможно, и они были вынуждены продолжить работу. Оказалось, что издержки по содержанию частных пенсионных фондов очень велики. Поскольку они маленькие, частные и жестко конкурируют между собой, то они вынуждены много денег тратить на маркетинговые программы, потом выяснилось, что их транзакционные издержки также очень высоки по сравнению с государственными фондами. Управление этими фондами тоже оказалось очень недешевым занятием - они вынуждены приглашать высокопрофессиональных менеджеров, которые вкладывали бы эти деньги. Государственные фонды оказались значительно дешевле в содержании и проще в оперативном управлении.
|
|