Сегодня 25 февраля, вторник ГлавнаяНовостиО проектеЛичный кабинетПомощьКонтакты Сделать стартовойКарта сайтаНаписать администрации
Поиск по сайту
 
Ваше мнение
Какой рейтинг вас больше интересует?
 
 
 
 
 
Проголосовало: 7278
Кнопка
BlogRider.ru - Каталог блогов Рунета
получить код
  Одиночная камера
Одиночная камера
Голосов: 0
Адрес блога: http://junty.livejournal.com/
Добавлен: 2015-12-20 00:09:34
 

Задачка 0.5.25 из книги Coding the matrix

2015-11-28 19:34:51 (читать в оригинале)

Задание

Using the variables base=10 and digits=set(range(base)), write a dictionary comprehension that maps each integer between zero and nine hundred ninety nine to the list of three digits that represents that integer in base 10. Thats is, the value should be

{0: [0, 0, 0], 1:[0, 0, 1], ..., 999: [9, 9, 9]}

Your expression should work for any base. For example, if you instean assign 2 to base and assign {0, 1} to digits, the value should be

{0: [0, 0, 0], 1:[0, 0, 1], ..., 7: [1, 1, 1]}

Решение

Не понимая, что делать с переменной digits, я схитрил:

{x:[x//(base**2), x%(base**2)//base, x%base] for x in range(base**3)}


В принципе работает, но не по заданию. Вот решение с переменной digits:

{i*base**2+j*base+k:[i,j,k] for i in digits for j in digits for k in digits}

Тэги: english, программирование

 


Самый-самый блог
Блогер ЖЖ все стерпит
ЖЖ все стерпит
по количеству голосов (152) в категории «Истории»


Загрузка...Загрузка...
BlogRider.ru не имеет отношения к публикуемым в записях блогов материалам. Все записи
взяты из открытых общедоступных источников и являются собственностью их авторов.