Thursday, June 19, 2008

Alien Numbers

Вчера сделал одно из тестовых заданий из прошлых соревнований GJC. Называется Alien Numbers. Суть задания заключается в переводе чисел из одной системы исчисления в другую. Задаётся число в первой системе, первая система, вторая и надо найти тоже число во второй системе. Система задаётся в виде символов, которые используются в ней.

Ну на пример в десятичной системе это выглядит как 0123456789, в двоичной 01 в 16-иричной 0123456789ABCDEF и т.д. Но никто не запрещает использовать сколько угодно знаков (даже символы типа №%:?*)

Вот и получается, что 9 из десятичной системы в системе oF8 выглядит как Foo =)
А как уже потом показал небольшой Fun, можно закодировать фразу типа HELLO_WORLD, которая представляет из себя на самом деле число в системе ABCDEFGHIJKLMNOPQRSTUVWXYZ_. И если это всё перевести в десятичную систему, то получиться число 1474967912327400 =)
Или наоборот число в десятичной системе 1539883028604641423645393490470186061541638512686 в той же буквенной будет ... ? =) А это если кто захочет, может попробовать сам, ибо свои разработки я прилагаю.

GJC_AlienNumbers.rar - тут лежит сам файл .py, несколько пробных тестовых файлов с заданиями, а так же в папочке dist можно найти .exe файл.
Использовать .py можно тем, у кого стоит python.

python AlienNumbers.py -i input.txt -o output.txt
или, если кто-то мне доверяет =), то может запустить .exe
AlienNumbers.exe -i input.txt -o output.txt
На этом я пока отлажу, пожалуй, игры с GJC. Надо заняться Tallinn 360 + один проект, о котором я расскажу, когда об этом будет иметь смысл говорить =)

Кстати, .exe делается такой штукой как py2exe

п.с.
Чё-то мне сутра сегодня вот такое примерещилось =)))

1 comment:

  1. И всё таки Оркут сосёт, по сравнению с одноклассниками. :)

    ReplyDelete