hdu1250 水题 题目链接:

pid=1250">http://acm.hdu.edu.cn/showproblem.php?pid=1250

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

hdu1297 递推求解  题目链接http://acm.hdu.edu.cn/showproblem.php?pid=1297


import java.util.*;
import java.math.BigInteger;
public class Main{
public static void main(String[] args){
Scanner in= new Scanner(System.in);
int a;
BigInteger[] b= new BigInteger[1010];
b[1]=BigInteger.ONE;
b[2]=BigInteger.valueOf(2);
b[3]=BigInteger.valueOf(4);
b[4]=BigInteger.valueOf(7);
while(in.hasNext()){
a=in.nextInt();
if(a<5)
System.out.println(b[a]);
else{
for(int i=5;i<=a;i++){
b[i]=b[i-1].add(b[i-2]).add(b[i-4]);
}
System.out.println(b[a]);
}
} }
}

hdu1715 水题 题目链接 http://acm.hdu.edu.cn/showproblem.php?

pid=1715

import java.util.*;
import java.math.BigInteger;
public class Main{
public static void main(String[] args){
Scanner in= new Scanner(System.in);
BigInteger[] b= new BigInteger[1010];
b[1]=BigInteger.valueOf(1);
b[2]=BigInteger.valueOf(1);
for(int i=3;i<=1000;i++){
b[i]=b[i-1].add(b[i-2]);
}
int n=in.nextInt();
while(n-->0){
int text=in.nextInt();
System.out.println(b[text]);
}
}
}

hdu1753 高精度小数求和  题目链接 http://acm.hdu.edu.cn/showproblem.php?pid=1753

import java.util.*;
import java.math.BigDecimal;
public class Main{
public static void main(String[] args){
Scanner in= new Scanner(System.in);
BigDecimal a,b;
while(in.hasNext()){
a=in.nextBigDecimal();
b=in.nextBigDecimal();
BigDecimal c=a.add(b);
String res = c.stripTrailingZeros().toPlainString(); //stripTrailingZeros()去除后面多余的零
//toPlainString(),取消科学计数法表示
 System.out.println(res);
}
}
}

hdu  1865 找规律 题目链接:

pid=1865">http://acm.hdu.edu.cn/showproblem.php?pid=1865

import java.util.*;
import java.math.*;
public class Main{
public static void main(String[] args){
Scanner in= new Scanner(System.in);
int a;
String test;
a=in.nextInt();
BigInteger[] num= new BigInteger[210];
num[1]=BigInteger.ONE;
num[2]=BigInteger.valueOf(2);
num[3]=BigInteger.valueOf(3);
while(a-->0){
test=in.next();
int n=test.length();
if(n<4)
System.out.println(num[n]);
else
{
for(int i=4;i<=n;i++){
num[i]=num[i-1].add(num[i-2]);
}
System.out.println(num[n]);
} }
}
}

hdu 2100  进制转换,。方法可能比較麻烦 只是也熟练了很多java的使用方法。

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2100

import java.util.*;
import java.math.*;
public class Main{
public static BigInteger mpow(int b){ //自己写的求幂函数
BigInteger ans=BigInteger.ONE;
for(int i=0;i<b;i++){
ans=ans.multiply(BigInteger.valueOf(26));
}
return ans;
}
public static String change(BigInteger num){
char[] line=new char[250];
int cnt=0;
while(num.compareTo(BigInteger.ZERO)!=0){
BigInteger a=num.mod(BigInteger.valueOf(26));
num=num.divide(BigInteger.valueOf(26));
line[cnt++]=(char)(a.intValue()+'A'); //将 BigInteger转换成int
}
return String.valueOf(line); //将字符数组转换成 String
}
public static void main(String[] args){
Scanner in= new Scanner(System.in);
while(in.hasNext()){
String a,b;
a=in.next();
b=in.next();
BigInteger an=BigInteger.ZERO;
//System.out.println(a);
//System.out.println((int)a.charAt(1));
for(int i=0;i<a.length();i++){
an=an.add(BigInteger.valueOf(a.charAt(i)-'A').multiply(mpow(a.length()-i-1)));//String 单个字符显示 用 str.charAt(i);
}
BigInteger bn=BigInteger.ZERO;
for(int i=0;i<b.length();i++){
bn=bn.add(BigInteger.valueOf(b.charAt(i)-'A').multiply(mpow(b.length()-i-1)));
}
BigInteger c=an.add(bn);
String fin=change(c);
for(int i=fin.length()-1;i>=0;i--){
if(fin.charAt(i)!='\0')
System.out.print(fin.charAt(i));
}
System.out.println(); }
}
}

Java大数练习第二弹的更多相关文章

  1. Java高精度学习第二弹——求N!

    继续学习Java高精度,今天写的是求N!. 首先附上源代码: import java.util.Scanner; import java.math.BigInteger; public class M ...

  2. java面试宝典第二弹

    arraylist和linklist的区别,hashmap和hashset的区别,常用的集合有哪些 一.基础内容 容器就是一种装其他各种对象的器皿.java.util包 容器:Set, List, M ...

  3. Java基础-程序流程控制第二弹(循环结构)

    Java基础-程序流程控制第二弹(循环结构) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 流程控制有三种基本结构:顺序结构,选择结构和循环结构.一个脚本就是顺序结构执行的,选择结 ...

  4. 20172325 2018-2019-1 《Java程序设计》第二周学习总结

    20172325 2018-2019-1 <Java程序设计>第二周学习总结 教材学习内容总结 3.1集合 集合是一种聚集.组织了其他对象的对象.集合可以分为两大类:线性集合和非线性集合. ...

  5. 多校第五场 归并排序+暴力矩阵乘+模拟+java大数&amp;记忆化递归

    HDU 4911 Inversion 考点:归并排序 思路:这题呀比赛的时候忘了知道能够用归并排序算出逆序数,可是忘了归并排序的实质了.然后不会做-- 由于看到题上说是相邻的两个数才干交换的时候.感觉 ...

  6. 201521123038 《Java程序设计》 第二周学习总结

    201521123038 <Java程序设计> 第二周学习总结 1.本章学习总结 学会在Java程序中使用函数,使程序层次更清晰 使用StringBuilder编写代码,减少内存空间的占用 ...

  7. 20175314 《Java程序设计》第二周学习总结

    20175314 <Java程序设计>第二周学习总结 教材学习内容总结 我在APPstore上发现了一个可以支持我们在IOS系统上学习实践Java程序的开发环境,只需要购买专业版就可以使用 ...

  8. Java 大数、高精度模板

    介绍: java中用于操作大数的类主要有两个,一个是BigInteger,代表大整数类用于对大整数进行操作,另一个是BigDecimal,代表高精度类,用于对比较大或精度比较高的浮点型数据进行操作.因 ...

  9. Java大数——快速矩阵幂

    Java大数——快速矩阵幂 今天做了一道水题,尽管是水题,但是也没做出来.最后问了一下ChenJ大佬,才慢慢的改对,生无可恋了.... 题目描述: 给a,b,c三个数字,求a的b次幂对c取余. 数据范 ...

随机推荐

  1. 对比hive和mysql 复杂逻辑流处理

      1.Mysql中可用存储过程和函数来实现复杂逻辑处理,两者的对比如下:存储过程作为可执行文件,编译一次放在数据库中,函数又返回值.可设定使用权限. 存储过程中可使用游标,声明变量.用call调用. ...

  2. Git——github高级

    分支管理 分支不是越多越好,只求一个稳定的分支,即master不要轻易去更改 对应master要有一个开发者分支,保证mater分支的稳定性 所有的功能都在开发者分支上进行 在所有功能开发后新建发布分 ...

  3. Ubuntu安装配置Charles,抓取http网络请求包

    http://blog.csdn.net/lylddinghffw/article/details/75322262

  4. Windows提高_1.1内核对象

    内核对象 什么是内核对象? 内核对象本质上是一个结构体,我们不能直接的操作一个内核对象,需要通过操作系统提供的一系列函数和我们使用的内核对象句柄对它进行一系列的修改. 如何操作内核对象? 创建一个内核 ...

  5. 初步认识MVC

     一丶路由(One) 自定义路由,静态路由,动态路由,组合路由 routes.MapRoute 二丶Action向View传值的四种方式(ViewData.ViewBag.TempData.Model ...

  6. 重置默认样式 css reset

    html { overflow-x:auto; overflow-y:scroll; } body, dl, dt, dd, ul, ol, li, pre, form, fieldset, inpu ...

  7. 「 HDU P3336 」 Count the string

    题目大意 给出一个长度为 $n$ 的字符串 $s$ 要求你求出 $s$ 的每一个前缀在 $s$ 中出现的次数之和.$n\le 200000$. 解题思路 暴力的对每一个前缀进行一次匹配,求出出现次数后 ...

  8. CentOS \Linux文件权限详解

    文件和目录权限概述 在linux中的每一个文件或目录都包含有访问权限,这些访问权限决定了谁能访问和如何访问这些文件和目录. 通过设定权限可以从以下三种访问方式限制访问权限:只允许用户自己访问:允许一个 ...

  9. Django DTL模板语法中定义变量

  10. SQL Server数据库基础编程

    转载,查看原文 Ø Go批处理语句 用于同时执行多个语句 Ø 使用.切换数据库 use master go   Ø 创建.删除数据库 方法1. --判断是否存在该数据库,存在就删除 if (exist ...