【HDOJ】1097 A hard puzzle
题目和1061非常相似,几乎可以复用。
1 #include <stdio.h> 2 3 int buf[10][10]; 4 5 int main() { 6 int a, b; 7 int i, j; 8 9 for (i=0; i<10; ++i) { 10 buf[i][0] = 1; 11 buf[i][1] = i; 12 for (j=2; j<10; ++j) { 13 buf[i][j] = buf[i][j-1]*i%10; 14 if (buf[i][j] == buf[i][1]) 15 break; 16 buf[i][0]++; 17 } 18 } 19 20 while (scanf("%d %d", &a, &b) != EOF) { 21 i = a % 10; 22 j = b % buf[i][0]; 23 if (!j) 24 j = buf[i][0]; 25 printf("%d\n", buf[i][j]); 26 } 27 28 return 0; 29 }