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 ...
随机推荐
- 警惕 InnoDB 和 MyISAM 创建 Hash 索引陷阱
MySql 最经常使用存储引擎 InnoDB 和 MyISAM 都不支持 Hash 索引,它们默认的索引都是 B-Tree.可是假设你在创建索引的时候定义其类型为 Hash,MySql 并不会报错,并 ...
- UVALive - 6266 Admiral 费用流
UVALive - 6266 Admiral 题意:找两条完全不相交不重复的路使得权值和最小. 思路:比赛的时候时间都卡在D题了,没有仔细的想这题,其实还是很简单的,将每个点拆开,连一条容量为1,费用 ...
- OPENCV(2) —— Basic Structures(一)
DataType A primitive OpenCV data type is one of unsigned char, bool,signed char, unsigned short, sig ...
- 前端中url、href、src的详细含义
一.URL的概念 统一资源定位符(或称统一资源定位器/定位地址.URL地址等,英语:Uniform Resource Locator,常缩写为URL),有时也被俗称为网页地址(网址).如同在网络上的门 ...
- SQLServer2008端口及防火墙设置
一,Microsoft SQL Server 2008R2数据库设置 1. 开始=>程序=>Microsoft SQL Server 2008R2=>配置工具=>S ...
- 织梦DedeCMS会员登录或退出后如何直接跳转到首页
织梦dedecms默认情况下的会员登录后会直接跳转到会员中心,退出也是一样,但是如果我们想让会员登录后直接跳转到首页,那该如何实现呢? 经过我们的研究,已经找到解决办法,下面是详细的修改步骤: 首先在 ...
- nodeType 节点的类型
元素结点 1 属性结点 2 attributes 文本结点 3 注释结点 8 document结点 9 documentFragment 11 文档碎片
- 学习参考《零基础入门学习Python》电子书PDF+笔记+课后题及答案
国内编写的关于python入门的书,初学者可以看看. 参考: <零基础入门学习Python>电子书PDF+笔记+课后题及答案 Python3入门必备; 小甲鱼手把手教授Python; 包含 ...
- HTTP 413报错
在php中通过flash上传文件到服务器端时报413错误,原来一直以为是php.ini配置的问题,但是检查了php.ini的配置以后,发现不是php.ini的问题,最后是通过Http Analyzer ...
- 【Henu ACM Round #13 F】Fibonacci-ish
[链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] 枚举序列的头两个数字是什么 O(N^2) 然后头两个数字确定之后. f[3],f[4]..就确定了 只需查看f[3],f[4]..是 ...