- 321 名前:317 mailto:sage [2009/01/21(水) 01:57:21 ]
- nのべき乗の1の位が、ある周期で循環することを利用して指数を小さくしてみた。
# coding: utf8 def cycle(n): i = n*n % 10 lst = [i] while n != i: i = i*n % 10 lst.append(i) return lst def main(): cycles = [cycle(i) for i in xrange(10)] clen = [len(item) for item in cycles] for i in range(10): print i, cycles[i] print "" for n in xrange(1, 1000): cl = clen[n%10] nn = pow(n, cycles[n%10][n%cl]) nnn1 = pow(n, nn, 10) print n, nnn1 if __name__ == '__main__': main()
|

|