题目链接:点击打开链接
题目描述:给定两串二进制,求其最大公约数,并以二进制的形式输出?
解题思路:java大整数
1、首先题目数据范围非常大,明显要用大整数
2、题目的输入和输出都是二进制,这个可以使用java方便的完成
3、求最大公约数,gcd即可,其实java大整数里面已经有这个函数了直接调用就行
代码
import java.math.BigInteger; import java.util.Scanner; public class Main { private static Scanner cin; public static void main(String[] args) { int T; cin = new Scanner(new BufferedInputStream(System.in)); T = cin.nextInt(); for(int t=1;t<=T;t++){ BigInteger x=cin.nextBigInteger(2); BigInteger y=cin.nextBigInteger(2); BigInteger ans=x.gcd(y); System.out.println("Case #"+t+": "+ans.toString(2)); } cin.close(); } }
版权声明:本文为博主原创文章,未经博主允许不得转载。
时间: 2025-01-17 18:17:12