Опера
Сегодня катался на велике, и случайно внезапно оказался в сабже. Цените:
В общем, надо будет сходить как-нибудь, послушать, как это звучит в замкнутом пространстве. А то ж не был ни разу :)
Романтичный балбес
Сегодня катался на велике, и случайно внезапно оказался в сабже. Цените:
В общем, надо будет сходить как-нибудь, послушать, как это звучит в замкнутом пространстве. А то ж не был ни разу :)
По традиции публикую неофициальный список беларусов, участвующих в очередном раунде Google Code Jam. Полужирным выделены товарищи, прошедшие в R2. Читаем дальше
ПрограммизмGoogle Code Jam 2009, ПрограммизмСентябрь 13, 2009
3 комментария
Сделал списочек участников из Беларуси, которые участвовали в квале. Всего 65 человек, 61 из которых проходит в Online Round 1.
НовостиGoogle Code Jam 2009, ПрограммизмСентябрь 04, 2009
9 комментариев
Только что принял участие в сабже. Результаты будут завтра. Задачки несложные. Кто хочет — можно присоединяться, потому что регистрация открыта будет ещё почти сутки.
UPD: Прошёл квал, решив все задачки. Первый раунд — на следующих выходных.
Товарищ
Антон подсказал остроумное решение первой задачи (Alien Language). Вкратце напомню её суть.
Дан набор слов языка и несколько шаблонов вида типа такого: abc(xy)d(gf). Буквы в скобках означают, что на месте этих скобок может быть любая из этих букв. То есть, шаблону выше удовлетворяют следующие слова: abcxdg, abcydg, abcxdf и abcydf. Необходимо найти для каждого из заданных шаблонов, сколько слов из словаря им соответствуют.
Задача при заданных там ограничениях решается в лоб. Самый крутой способ (который я узнал от Антона) — это преобразовать шаблон в регексп, заменив круглые скобки на квадратные :) Тогда задача решается буквально в пару строчек на руби путем проверки каждого слова словаря на соотвествие этому регекспу. Любуйтесь короче:
l, d, n = gets.split(' ').map { |w| w.to_i } dictionary = Array.new(d) { |i| gets.chomp } 1.upto(n) do |test_no| pattern = gets.chomp.gsub('(', '[').gsub(')', ']') regex = Regexp.new(pattern) count = dictionary.select { |word| regex =~ word }.size puts "Case ##{test_no}: #{count}" end
ПрограммизмGoogle Code Jam 2009, ПрограммизмСентябрь 03, 2009
Комментариев нет
Читая унылый хабр, наткнулся на забавный перевод термина Duck Typing — утипизация. А чё, остроумно.
Программизм, Языкиduck typing, загоны, Программизм, утипизация, языковедческоеСентябрь 02, 2009
Комментариев нет
Забавляет бессмысленность многих устойчивых употребляемых нами словосочитаний. Вот, например, такое выражение: «Убедительно прошу вас разобраться», или: «Убедительная просьба! Не оставляйте что-нибудь где-нибудь». Как может просящий человек (субъект) так самоуверенно судить о своей убедительности? О ней может иметь представление объект воздействия, то есть тот, кого просят. Вот он может сказать: да, ты убедительно просишь. Или наоборот, неубедительно.
В общем, нелогичное выражение, хоть и устойчивое. Мне больше нравится «настоятельно прошу».
Языкизагоны, занудство, языковедческоеСентябрь 01, 2009
Комментариев нет