摘要: 写的这个伪线段树花了一个下午,为什么说是伪线段树呢,因为这道题目其实并没有对一定域进行更新,而只是找的某个点,所以这里的程序在找的时候无论是要更新的结点还是经过的路径都统一的 " += update " 了,加油,今天晚上在写点题目,写一个完整版的出来。小结也就等到下个完整版再一一写出来。 代码如下:#include <cstdio>#include <cstring>#include <cstdlib>#include <cmath>#include <queue>#include <algorithm&g 阅读全文
posted @ 2011-08-14 19:53 沐阳 阅读(238) 评论(0) 推荐(0) 编辑
摘要: 首先把100位长的斐波那契数全部计算出来,然后遍历计数,很暴力啊! 代码如下:import java.math.BigInteger;import java.util.Scanner;public class Main { public static void main(String[] args) { Scanner in = new Scanner(System.in); BigInteger[] a = new BigInteger[1000]; a[1] = BigInteger.ONE; a[2] = BigInteger.ONE.add( BigInteger.ONE ); a[. 阅读全文
posted @ 2011-08-14 15:14 沐阳 阅读(382) 评论(0) 推荐(0) 编辑
摘要: 开辟一个数组通过 %2来计算斐波那契数。 代码如下:import java.math.BigDecimal;import java.math.BigInteger;import java.util.Locale;import java.util.Scanner;public class Main { public static void main(String[] args) { Scanner in = new Scanner(System.in); BigInteger[] a = new BigInteger[2]; int num, ca; ca = in.nextInt(); wh. 阅读全文
posted @ 2011-08-14 14:30 沐阳 阅读(297) 评论(0) 推荐(0) 编辑
摘要: 输出之前先去掉前导的零,再转化为普通字符型,可能会以科学计数法输出。 代码如下:import java.math.BigDecimal;import java.util.Locale;import java.util.Scanner;public class Main { public static void main(String[] args) { Scanner in = new Scanner(System.in); BigDecimal a, b; while( in.hasNextBigDecimal() ) { a = in.nextBigDecimal(); b = in.n. 阅读全文
posted @ 2011-08-14 14:12 沐阳 阅读(314) 评论(0) 推荐(0) 编辑
摘要: 这次是被彻底的无语了,由于对java语言的不熟悉,很对简单的操作都是无计可施,还好上网查了一下一些函数的API,熟悉了相关的操作。只能惊叹java自带的类还是很强大的。代码如下: import java.math.BigDecimal;import java.util.Locale;import java.util.Scanner;public class Main { public static void main(String[] args) { Scanner in = new Scanner(System.in); BigDecimal a, res; int exp; while . 阅读全文
posted @ 2011-08-14 13:58 沐阳 阅读(431) 评论(0) 推荐(0) 编辑
摘要: 在做这个题的过程中有了解到了在java这么语言中,只有八种常量是直接分配内存的,其余对象均为引用类型,这样有效的避免了内存的浪费。不过还有一个问题,为什么这样写就不正确呢? if( b == BigInteger.ZREO ) {} 这个判定输入的b是否为零就不正确。 代码如下:import java.math.BigInteger;import java.util.Scanner;public class Main { public static void main(String[] args) { BigInteger sum, b; int T; Scanner in = new Sc. 阅读全文
posted @ 2011-08-14 11:08 沐阳 阅读(408) 评论(0) 推荐(0) 编辑
摘要: 一道最基本的大数相加题,java果然强大啊。import java.math.BigInteger;import java.util.Scanner;public class Main { public static void main(String[] args) { BigInteger a, b; int T; Scanner in = new Scanner(System.in); T = in.nextInt(); for (int i = 1; i <= T; ++i) { System.out.println("Case" + " " 阅读全文
posted @ 2011-08-14 09:53 沐阳 阅读(2441) 评论(0) 推荐(0) 编辑