微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

NYOJ 大数分类(java)

想练练java就找到了这个分类,选了这五个题AC了,,其他题都差不多。

大数阶乘:大数阶乘

import java.util.*;
import java.io.*;
import java.math.*;
public class Main
{
	public static void main(String[] args) 
	{
	     Scanner in = new Scanner(system.in);
	     int m=in.nextInt();
	     BigInteger sum=BigInteger.valueOf(1);
	     for(int i=1;i<=m;i++)
	     {
	     	sum=sum.multiply(BigInteger.valueOf(i));
	     }
	     System.out.println(sum);
	}
}

棋盘覆盖:棋盘覆盖

import java.io.*;
import java.util.*;
import java.math.*;
public class Main
{
	public static void main(String[] args) {
		Scanner in=new Scanner (system.in);
		int m=in.nextInt();
		while(m-->0)
		{
			int k=in.nextInt();
			BigInteger sum=BigInteger.valueOf(1);
			for(int i=1;i<=k;i++)
			{
				sum=sum.multiply(BigInteger.valueOf(4));
			}
			BigInteger num;
			num=sum.divide(BigInteger.valueOf(3));
			System.out.println(num);
		}
	}
}

比大小:比大小

import java.io.*;
import java.util.*;
import java.math.*;
public class Main
{
	public static void main(String[] args) {
		Scanner in=new Scanner(system.in);
		while(in.hasNext())
		{
			BigInteger m=in.nextBigInteger();
			BigInteger n=in.nextBigInteger();
			if(m.equals(BigInteger.ZERO)&&n.equals(BigInteger.ZERO))
				break;
			if(m.compareto(n)==0)
				System.out.println("a==b");
			else if(m.compareto(n)>0)
				System.out.println("a>b");
			else
				System.out.println("a<b");
		}
	}
}

递推序列:某种序列

import java.io.*;
import java.util.*;
import java.math.*;
public class Main
{
	public static void main(String[] args) {
		Scanner in=new Scanner(system.in);
		BigInteger a[]=new BigInteger[100];
		while(in.hasNext())
		{
			for(int i=0;i<3;i++)
				a[i]=in.nextInt();
			for(int i=3;i<99;i++)
				a[i]=a[i-1].add(a[i-2]).add(a[i-3]);
			System.out.println(a[99]);
		}
	}
}

最小公倍数:最小公倍数

import java.util.*;  
import java.math.*;  
import java.io.*;
public class Main{  
    public static void main(String[] args){  
        Scanner cin = new Scanner(system.in);  
        BigInteger s[] = new BigInteger[102];  
        s[1] = BigInteger.valueOf(1);  
        s[2] = BigInteger.valueOf(2);  
        int i;  
        for(i = 3; i < 102; i ++){  
            s[i] = BigInteger.valueOf(i);  
            BigInteger temp = s[i-1].gcd(s[i]);    //java自带的gcd
            s[i] = s[i].multiply(s[i-1]).divide(temp);  
        }  
        int n;  
        while(cin.hasNext()){  
            n = cin.nextInt();  
            System.out.println(s[n]);  
        }  
    }  
}   

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐