java大数

	import java.util.*;  
	import java.math.BigInteger;;
    public class Main  
    {  
        public static void main(String [] args)  
        {  
            Scanner cin = new Scanner(System.in);//对于Scanner 类声明对象cin用来扫描控制台输入 
        	int T;
        	while(cin.hasNext())
        		{
        			T = cin.nextInt();
        			for(int cas = 1; cas <= T; cas++)
        			{
        				BigInteger m = cin.nextBigInteger();
        				BigInteger n = cin.nextBigInteger();
        				BigInteger k = cin.nextBigInteger();
        				BigInteger c = new BigInteger("1");//将大数型变量c赋值为1;
        				BigInteger c2 = new BigInteger("2");//将大数型变量c2赋值为2;
        				//System.out.println(n.divide(c2));
        				BigInteger t1 = (m.subtract(c)).divide(c2);
        				BigInteger t2 = (n.subtract(c)).divide(c2);
        				System.out.print("Case #");
        				System.out.print(cas);
        				System.out.print(": ");
        				if(((n.multiply(m)).subtract(t1.multiply(t2))).compareTo(k) <= 0 && k.compareTo(n.multiply(m)) <= 0)
        				{
        							System.out.println("yes");
        				}
        				else
        				{
        					System.out.println("no");
        				}
        				/*用java写代码的时候一定要一行写完之后在根据Eclipse系统自动判断语法来审查代码的正误 。
        				 * 刚开始就是因为一句还没写完报错结果误以为java用不了&&而导致写成了这样,逻辑不对而wa
        				 * 所以说java的一条语句一定要写完再回头看是否写错了
        				if(((n.multiply(m)).subtract(t1.multiply(t2))).compareTo(k) <= 0)
        				{
        					if(k.compareTo(n.multiply(m)) <= 0)
        					{
        							System.out.println("yes");
        					}
        				}
        				else
        				{
        					System.out.println("no");
        				}
        				 * 
        				 * */
        			}
        		}
            cin.close();
        }  
    }  
10.7集训第2题,

题目链接:点击打开链接

#include <iostream>
#include <cstdio>
#include <cmath>

using namespace std;
int n;

int solve(int n)
{
    return n == 1 ? 1 : solve(n/2)+1;
}

int main()
{
    int T;
    while(~scanf("%d", &T))
    {
        for(int cas= 1; cas <= T; cas++)
        {
            scanf("%d", &n);
            printf("Case #%d: %d\n", cas, solve(n));
        }
    }
    return 0;
}
/*主要是找到递推的规律
*/

java大数练手

hdu 1002 大数  题目链接点击打开链接

import java.util.*;
import java.math.*;
public class Main {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Scanner cin = new Scanner(System.in);
		int T;
		while(cin.hasNext())
		{
			T = cin.nextInt();
			for(int cas= 1; cas <= T; cas++)
			{
				
				BigInteger a = cin.nextBigInteger();
				BigInteger b = cin.nextBigInteger();
				System.out.print("Case ");
				System.out.print(cas);
				System.out.println(":");
				System.out.print(a);
				System.out.print(" + ");
				System.out.print(b);
				System.out.print(" = ");
				System.out.println(a.add(b));
				if(cas < T) System.out.println();
			}
		}
	}

}
import java.util.*;
import java.math.*;
public class Main {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Scanner cin = new Scanner(System.in);
		int T;
		while(cin.hasNext())
		{
			T = cin.nextInt();
			for(int cas= 1; cas <= T; cas++)
			{
				
				BigInteger a = cin.nextBigInteger();
				BigInteger b = cin.nextBigInteger();
				//原来用+号连接就好,不用一行一行的输出
				System.out.println("Case "+cas+":");
				System.out.println(a+" + "+b+" = "+a.add(b));
				//System.out.print("Case ");
				//System.out.print(cas);
				//System.out.println(":");
				//System.out.print(a);
				//System.out.print(" + ");
				//System.out.print(b);
				//System.out.print(" = ");
				//System.out.println(a.add(b));
				if(cas < T) System.out.println();
			}
		}
	}

}



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值