题意:
给你两个二进制数a,b,求gcd(a,b),结果用二进制输出
方法:
用JAVA大数轻松解决
这题中学会了很多java大数的方法
代码:
import java.math.BigInteger;
import java.util.*;
public class Main {
public static void main(String[] args)
{
Scanner sc=new Scanner(System.in);
int t= sc.nextInt();
for(int k= 1; k<= t; k++)
{
String s= sc.next();
BigInteger aa= new BigInteger(s, 2); //字符串s由二进制赋值给aa
s= sc.next();
BigInteger bb= new BigInteger(s, 2);
BigInteger cc= new BigInteger("0");
BigInteger e= bb.gcd(aa); // 居然可以直接gcd,真的是什么都不用手写
System.out.print("Case #" + k +": ");
System.out.println(e.toString(2)); //toString(t) 转化为t进制输出
}
}
}