January 15th, 2009

Очень красивая задача

Via avva :

Задачка от Ноги Алона:

Даны 22 точки в промежутке [0,1] (необязательно различные). Вы 20 раз повторяете следующую операцию: выбираете две из них и заменяете обе на точку, лежащую ровно посредине между ними. После 20 таких ходов остается всего две точки. Доказать: вы всегда сможете выбрать ходы так, чтобы между двумя оставшимися точками расстояние было не больше 1/1000.

Обсуждение здесь, решения пока нет.

Haskell + .Net

Появился пакет, который позволяет вызывать Хаскель из .Net и наоборот: haskell.forkio.com/dotnet

Пример оттуда:

module FileDialog where

import NET

selectFile :: IO String
selectFile = do
  obj <- new "System.Windows.Forms.FolderBrowserDialog"
  (obj :: Object ()) # invoke_ "ShowDialog" ()
  obj # getField "SelectedPath" ()

Выглядит очень интересно.