Java 大数
How Many Fibs?
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 6641 Accepted Submission(s): 2629
f1 := 1
f2 := 2
fn := fn-1 + fn-2 (n >= 3)
Given two numbers a and b, calculate how many Fibonacci numbers are in the range [a, b].
input contains several test cases. Each test case consists of two
non-negative integer numbers a and b. Input is terminated by a = b = 0.
Otherwise, a <= b <= 10^100. The numbers a and b are given with no
superfluous leading zeros.
import java.util.*;
import java.io.*;
import java.math.*;
public class Main
{
static Scanner cin=new Scanner(System.in);
static PrintWriter cout=new PrintWriter(System.out,true);
public static void main(String[] args)
{
BigInteger a[]=new BigInteger[1010],n,m;
a[1]=BigInteger.ONE;
a[2]=BigInteger.valueOf(2);
for(int i=3;i<=1008;i++)
{
a[i]=a[i-1].add(a[i-2]);
}
while(cin.hasNext())
{
int ans=0;
n=cin.nextBigInteger();
m=cin.nextBigInteger();
if(n.compareTo(BigInteger.ZERO)==0 && m.compareTo(BigInteger.ZERO)==0) return;
if(n.compareTo(m)>0) {BigInteger t=n;n=m;m=t;}
for(int i=1;i<=1008;i++)
{
if(a[i].compareTo(n)>=0 && a[i].compareTo(m)<=0) ans++;
}
cout.println(ans);
}
}
}
Integer Inquiry
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 20693 Accepted Submission(s): 5500
of the first users of BIT's new supercomputer was Chip Diller. He
extended his exploration of powers of 3 to go from 0 to 333 and he
explored taking various sums of those numbers.
``This supercomputer
is great,'' remarked Chip. ``I only wish Timothy were here to see these
results.'' (Chip moved to a new apartment, once one became available on
the third floor of the Lemon Sky apartments on Third Street.)
input will consist of at most 100 lines of text, each of which contains
a single VeryLongInteger. Each VeryLongInteger will be 100 or fewer
characters in length, and will only contain digits (no VeryLongInteger
will be negative).
The final input line will contain a single zero on a line by itself.
This problem contains multiple test cases!
The
first line of a multiple input is an integer N, then a blank line
followed by N input blocks. Each input block is in the format indicated
in the problem description. There is a blank line between input blocks.
The output format consists of N output blocks. There is a blank line between output blocks.
import java.util.*;
import java.io.*;
import java.math.*;
public class Main
{
static Scanner cin=new Scanner(System.in);
static PrintWriter cout=new PrintWriter(System.out,true);
public static void main(String[] args)
{
int n=cin.nextInt();
while((n--)!=0)
{
BigInteger b=BigInteger.ZERO;
BigInteger a=cin.nextBigInteger();
BigInteger ans=BigInteger.ZERO;
while(a.compareTo(b)>0)
{
ans=ans.add(a);
a=cin.nextBigInteger();
}
cout.println(ans.toString());
if(n!=0) cout.println();
}
}
}
Exponentiation
Time Limit: 2000/500 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 9667 Accepted Submission(s): 2873
involving the computation of exact values of very large magnitude and
precision are common. For example, the computation of the national debt
is a taxing experience for many computer systems.
This problem requires that you write a program to compute the exact value of Rn where R is a real number ( 0.0 < R < 99.999 ) and n is an integer such that 0 < n <= 25.
input will consist of a set of pairs of values for R and n. The R value
will occupy columns 1 through 6, and the n value will be in columns 8
and 9.
output will consist of one line for each line of input giving the exact
value of R^n. Leading zeros should be suppressed in the output.
Insignificant trailing zeros must not be printed. Don't print the
decimal point if the result is an integer.
.00000005148554641076956121994511276767154838481760200726351203835429763013462401
43992025569.928573701266488041146654993318703707511666295476720493953024
29448126.764121021618164430206909037173276672
90429072743629540498.107596019456651774561044010001
1.126825030131969720661201
import java.util.*;
import java.io.*;
import java.math.*;
public class Main
{
static Scanner cin=new Scanner(System.in);
static PrintWriter cout=new PrintWriter(System.out,true);
public static void main(String[] args)
{
BigDecimal a,c;
int b;
while(cin.hasNext())
{
a=cin.nextBigDecimal();
b=cin.nextInt();
c=a.pow(b);
String ans=c.toPlainString();
if(ans.contains(".")==false)
{
cout.println(ans);
}
else
{
int x=0,y=ans.length()-1;
while(ans.charAt(x)=='0') x++;
while(ans.charAt(y)=='0') y--;
if(ans.charAt(y)!='.')y++;
cout.println(ans.substring(x,y));
}
}
}
}
N!
Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 262144/262144 K (Java/Others)
Total Submission(s): 83284 Accepted Submission(s): 24514
import java.util.*;
import java.io.*;
import java.math.*;
public class Main
{
static Scanner cin=new Scanner(System.in);
static PrintWriter cout=new PrintWriter(System.out,true);
public static void main(String[] args)
{
int n;
while(cin.hasNext())
{
n=cin.nextInt();
BigInteger a=BigInteger.valueOf(n);
BigInteger b=BigInteger.ONE;
BigInteger c=BigInteger.ONE;
for(BigInteger i=BigInteger.ONE;i.compareTo(a)<=0;i=i.add(b))
{
c=c.multiply(i);
}
cout.println(c);
}
}
}
Java 大数的更多相关文章
- java大数
java大数还是很好用的! 基本加入: import java.math.BigInteger; import jave.math.BigDecimal; 分别是大数和大浮点数. 首先读入可以用: S ...
- JAVA大数运算
java大数是个好东西,用起来方便,代码短. 代码如下: import java.util.*; import java.math.*; public class Main { public stat ...
- java大数总结【转】
java大数(2013长春网络赛)--hdu4762总结一下:1.java提交类要写Main.2.读取大数. Scanner read=new Scanner(System.in); BigInteg ...
- HDU5047Sawtooth(java大数)
HDU5047Sawtooth(java大数) 题目链接 题目大意:在一个矩形内画n个"M".问如何画可以把这个矩形分成最多的区域. 给出这个区域的数目. 解题思路:最好的方式就是 ...
- JAVA大数类
JAVA大数类api http://man.ddvip.com/program/java_api_zh/java/math/BigInteger.html#method_summary 不仅仅只能查J ...
- HDU4762(JAVA大数)
Cut the Cake Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Tota ...
- ZOJ3477&JAVA大数类
转:http://blog.csdn.net/sunkun2013/article/details/11822927 import java.util.*; import java.math.BigI ...
- 多校第五场 归并排序+暴力矩阵乘+模拟+java大数&记忆化递归
HDU 4911 Inversion 考点:归并排序 思路:这题呀比赛的时候忘了知道能够用归并排序算出逆序数,可是忘了归并排序的实质了.然后不会做-- 由于看到题上说是相邻的两个数才干交换的时候.感觉 ...
- 收藏的一段关于java大数运算的代码
收藏的一段关于java大数运算的代码: package study_02.number; import java.math.BigDecimal; import java.math.BigIntege ...
- java大数判断相等
java大数判断相等: 1.equals()方法2.compareTo()方法区别:2.00与2.0 equals()方法判断不等,compareTo()方法判断相等,科学的说法可以看java api ...
随机推荐
- Qt编译mysql以及创建表后进行导入操作
鉴于很多同学对Qt编译myql总是不能成功.出现各种问题,今天特此写出本教程,希望可以帮到须要的同学. 首先,须要明确编译的目的和原理. 目的:Qt 5.2版本号曾经都是不带mysql驱 ...
- 欢迎各位技术牛人增加Swift QQ群:343549891
急招:五年以上Swift开发经验,24个月工资.30天年假.配司机专车. 欢迎各位技术牛人增加Swift 敏捷大拇指 官方QQ群1: 报上"来自CSDN"就可以.谢谢! 訪问 大拇 ...
- 权重轮询调度算法 java版本号
权重轮询调度算法(Weighted Round-Robin Scheduling)--java版本号 因为每台server的配置.安装的业务应用等不同.其处理能力会不一样.所以,我们依据server的 ...
- axure母版使用实例之百度门户
1.首先构建页面基本结构 2.新建母板 3.将母板应用于各个页面 4.在母板中隐藏聚焦背景及下拉二级菜单 5.在母板中添加事件:打开相应界面.显示/隐藏二级菜单 5.设置页面加载效果:给点击的一级菜单 ...
- 学习总结--Dom
节点(每个元素都会有的3个nodeValue nodeType nodeName:) 1 元素节点 nodeName 元素节点名 nodeType 1 nodeValue null或者undefine ...
- UDP广播
客户端UDP发送消息至服务器端服务器IP:192.168.1.114服务器端口:2014 客户端 Socket socket = new Socket(AddressFamily.InterNetwo ...
- python全栈_day01
计算机容量 1位 = 1bit 8bit = 1byte = 1字节 1024bytes = 1kbytes =1KB 1024个字符,小文档 ,几百k可以表示一张图片 1024KB ...
- 一个Web报表项目的性能分析和优化实践(五):重构有助于性能优化么?
项目从初次开发到现在,已经快3年了.期间,有N个工程师参与过. 需求方面:增加减少,反反复复,无数次:人力方面:增加减少,不稳定:时间方面:功能开发着急上线,Bug开发紧急修复. 因此,代码臃肿,问题 ...
- 洛谷 P1591 阶乘数码
P1591 阶乘数码 题目描述 求n!中某个数码出现的次数. 输入输出格式 输入格式: 第一行为t(≤10),表示数据组数.接下来t行,每行一个正整数n(≤1000)和数码a. 输出格式: 对于每组数 ...
- xgboost参数调优的几个地方
tree ensemble里面最重要就是防止过拟合. min_child_weight是叶子节点中样本个数乘上二阶导数后的加和,用来控制分裂后叶子节点中的样本个数.样本个数过少,容易过拟合. su ...