Не спалось как-то ночью и мягкой подруги не было под рукой. Решил поиграть во что-нибудь. Тетрис слишком активный, сокобан уже прошёл весь, World of Goo перегревает комп — решил погонять в судоку. Зашёл на websudoku.com и начал играть, всё бы хорошо, но это не в SXEmacs и недоступно offline. Решил написать sudoku.el для игры в судоку под SXEmacs. Поискал в инете и нашёл sudoku.el для (X)Emacs. Скачал, запустил и не обрадовался, посмотрел код — вообще расстроился. В итоге ночь провёл за переписыванием sudoku.el, чтобы удовлетворить свои нужды, а именно:
- Удобный, красивый и информативный интерфейс
- Возможность скачивания судок с websudoku.com и menneske.no
- Возможность печати судок
- Возможность редактирования судок
- Возможность сохранения/загрузки судок
- Наличие карандашей для сложных техник и экспериментов
- Возможность решать только реально сложные задачи, т.е. авто-заполнение (полу)очевидных полей
Пример
Запускаем M-x sudoku RET:
Сразу видим кучу очевидных полей для заполнения, например, R5C5 (где курсор) и понятно дело лениво их все заполнять, поэтому нажимаем a, получаем:
Теперь действительно сложная задача, но сразу видно интересность значения 4, поэтому берём карандаш1 — p (от pencil) и применяем технику Nishio начиная с R8C9, получаем:
- R8C9 -> 4 (начало Nishio)
- R2C3 -> 4 (единственное место в C3 где может быть 4)
- R3C7 -> 4 (единственное место в R1 где может быть 4)
- в восьмом квадрате некуда ставить 4
то есть в R8C9 не может стоять 4. C-u p и отменяем карандаш. Теперь мы знаем, что 4 стоит в R2C9:
Хорошая судочка, пожалуй сыну подойдёт, распечатаем её нажав P, на бумаге это выглядит вот так:
Скачать
Скачать можно с http://lgarc.narod.ru/xemacs/sudoku.el
Замечания, баги, фиксы присылайте на lg AT sxemacs.org
Комментариев нет:
Отправить комментарий