2014年7月24日 星期四

UVA-11549, Calculator Conumdrun

重點是找環!!
第一次實寫這個...

 1 #include <iostream>

 2 #include <cstdio>

 3 #include <cstdlib>

 4 #define LL long long int

 5 using namespace std;

 6 LL base;

 7 LL cal(LL a){

 8     LL tmp=(LL)a*a;

 9     while(tmp >= base)tmp/=10;

10     return tmp;

11 }

12 

13 int main(){

14     int T;

15     int n, k, ans;

16     LL a, b;

17     scanf("%d", &T);

18     while(T--){

19         scanf("%d%d", &n, &k);

20         base=1;   while(n--)base*=10;

21         ans=0;

22         a=(LL)k;

23         b=cal(k);

24         if(a > ans) ans=a;

25         if(b > ans) ans=b;

26         while(a!=b){

27             a=cal(a); if(a > ans) ans=a;

28             b=cal(b); if(b > ans) ans=b;

29             b=cal(b); if(b > ans) ans=b;

30         }

31         printf("%d\n", ans);

32     }

33     return 0;

34 }

</ pre>

沒有留言:

張貼留言

TEST