LeeBlog

导航

2011年5月7日 #

[转]ACM之java速成

摘要: 这里指的java速成,只限于java语法,包括输入输出,运算处理,字符串和高精度的处理,进制之间的转换等,能解决OJ上的一些高精度题目。1. 输入:格式为:Scanner cin = new Scanner (new BufferedInputStream(System.in));例程:import java.io.*;import java.math.*;import java.util.*;import java.text.*;public class Main{ public static void main(String[] args) { Scanner cin = new Sca. 阅读全文

posted @ 2011-05-07 18:40 LeeBlog 阅读(205) 评论(0) 推荐(0) 编辑

错排小结

摘要: 从昨天到今天,学习了卡了我很久的错排,而这两天小错误犯了很多,导致我卡了很久,不然应该可以很轻松的解决,不过我觉得这是件好事,因为现在卡总比在赛场上卡好.........错排公式有两个( 1 ) n! / 2! - n!/3! + n!/4!-.......+( -1 ) ^ n * n! / n!;递推来........( 2 )f( n ) = ( f( n - 1 ) + f( n - 2 ) ) * ( n - 1 ) ,f( 1 ) = 0,f( 2 ) = 1;DP来........我开始水这两个的时候都是用的double型一直不能水啊 .. 知道后面用了longlong行才能过. 阅读全文

posted @ 2011-05-07 17:38 LeeBlog 阅读(151) 评论(0) 推荐(0) 编辑

HDU 2068 RPG的错排

摘要: 这题跟hdu 2049 差不多,那个是从N个中选M个,这个是从N个从选1,2,3.......N/2个,错排与组合.....#include<stdio.h>long long num[28];void chart( ){ num[0] = 1; num[1] = 0; num[2] = 1; for( int i = 3; i < 28; ++i ) num[i] = ( i - 1 )*( num[i-1] + num[i-2] ); }long long f( int n,int k ){ double sum = 1; for( int i = n,j = 1; j 阅读全文

posted @ 2011-05-07 17:11 LeeBlog 阅读(294) 评论(0) 推荐(0) 编辑

HDU 1465 不容易系列之一

摘要: 一个错排公式直接解决 水过#include<stdio.h>long long num[25];void chart( ){ num[1] = 0; num[2] = 1; for( int i = 3; i < 25; ++i ) num[i] = ( num[i-1] + num[i-2] ) * ( i - 1 ); }int main( ){ chart( ); int n; while( scanf( "%d",&n ) != EOF ) printf( "%I64d\n",num[n] ); return 0;} 阅读全文

posted @ 2011-05-07 09:58 LeeBlog 阅读(272) 评论(0) 推荐(0) 编辑