#!/usr/bin/perl # http://www.graco.c.u-tokyo.ac.jp/~nishi/net/image/jpeg.html # Copyright (c) 2003 NISHIMURA Daisuke use integer; if ($ARGV[0] =~ /^-(\d+)/) { $n = $1; shift; } else { $n = 8; } $i = 0; $sign = 1; $u = - $n + 1; $v = 1; while (<>) { data: while (/(\S+)/g) { $q[$i] = $1; if (--$v == 0) { $u++; $sign = - $sign; $i = ($sign > 0 ? ($n - 1) * $n : $n - 1) + ($sign * $u > 0 ? $u : $u * $n); $v = $n - abs $u; } else { $i += $sign * (1 - $n); } } } print "
| " . $q[$k++] . " | "; } print "