題目鏈接:http://acm.hdu.edu.cn/showproblem.php?pid=5050
Divided Land
Time Limit: 8000/4000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total Submission(s): 115 Accepted Submission(s): 57
Each case contains two binary number represents the length L and the width W of given land. (0 < L, W ≤ 21000)
用java大數類取個gcd就完了。。。一開始手寫了下gcd居然還共享了一次wa.......ORZ
import java.util.*;
import java.math.*;
public class Main {
public static void main(String [] args)throws Exception{
Scanner cin=new Scanner(System.in);
BigInteger one=new BigInteger("1");
BigInteger zero=new BigInteger("0");
BigInteger two= new BigInteger("2");
BigInteger four= new BigInteger("4");
BigInteger six = new BigInteger("6");
BigInteger A;
BigInteger B;
int T;
T=cin.nextInt();
for(int tt=1;tt<=T;tt++){
String a,b;
a=cin.next();b=cin.next();
A=new BigInteger(a,2);
B=new BigInteger(b,2);
BigInteger ans=A.gcd(B);
System.out.print("Case #"+tt+": ");
System.out.println(ans.toString(2));
}
}
}