Судоку запутанный питон -> Perl перевод

1

Кто-нибудь хочет перевести это в обфускацию perl? Это написано на Python, взятом из: здесь

def r(a):i=a.find('0');~i or exit(a);[m
in[(i-j)%9*(i/9^j/9)*(i/27^j/27|i%9/3^j%9/3)or a[j]for
j in range(81)]or r(a[:i]+m+a[i+1:])for m in'%d'%5**18]
from sys import*;r(argv[1])

Я понимаю это просто для удовольствия:)

  • 0
    Выглядит довольно запутанным для меня!
  • 1
    Оскорбленный код - потраченный впустую код. Это просто для развлечения и не стоит переводить на другой язык.
Показать ещё 8 комментариев
Теги:
translate

2 ответа

3
Лучший ответ
sub r{($a=shift)=~/0/g?my$i=pos:die$a;T:for$m(1..9){($i-$_)%9*(int($i/9)^int($_/9))*(int($i/27)^int($_/27)|int($i%9/3)^int($_%9/3))||$a=~/^.{$_}$m/&&next T,for 0..80;substr($a,$i,1)=$m;r($a)}}r@ARGV

Перевод фразы. Дольше, поскольку Python 2 / является целым делением, а Perl - плавающей точкой.

2

Уже есть несколько решателей Sudoku, написанных на Obfuscated Perl, действительно ли вы хотите другой (возможно, менее эффективный)?

Если нет...

  • De-Затемнение.
  • Переписать в Perl.
  • Затемнение.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню