自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 收藏
  • 关注

原创 poj2299(Ultra-QuickSort)求逆序对

当lefta[j],这样的说明在a的前段中i...mid的元素都比a[j]大,于是逆序数+=mid-i +1;如果a[i] 这题如果是用O(n^2)的方法统计会超时,注意要用long long保存,用long会WA ? #include #include #include #define MAX 500005 using name

2012-03-30 01:31:00 412

原创 poj2823(单调队列队列)

STL: 在队尾删除,在队尾进队 #include  #include  using namespace std;   const int maxn=1000000+10;   int a[maxn],b[maxn],c[maxn];   int main()  {       ios::sync_with_stdio(false);       int i,n,k;

2012-03-30 00:02:43 455

原创 poj 3840 (nim博弈)

定义:若所有火柴数异或为0,则该状态被称为利他态,用字母T表示;否则,  为利己态,用S表示。[定理 1]:对于任何一个S态,总能从一堆火柴中取出若干个使之成为T态。这就是说从A(t)堆中取出 A(t) - x 根火柴后状态就会从S态变为T态。[定理 2]:T态,取任何一堆的若干根,都将成为S态。[定理 3]:S态,只要方法正确,必赢。 [定理 4]:T态,只要对方法正确,必败。定义:若一堆中仅有

2012-03-23 01:35:30 579

转载 poj 2389(高精度)N!

数组模拟!!! Code highlighting produced by Actipro CodeHighlighter (freeware) http://www.CodeHighlighter.com/ -#includeiostream> #includestring> using namespace std; string BigIntegerMult(cons

2012-03-21 00:37:55 564

转载 poj 1579(记忆化搜索)DP

Consider a three-parameter recursive function w(a, b, c): if a if a > 20 or b > 20 or c > 20, then w(a, b, c) returns: w(20, 20, 20) if a otherwise it returns: w(a-1, b, c) + w(a-1, b-1, c) + w(

2012-03-15 23:33:41 458

转载 poj1001(高精度)

转载自:http://www.cppblog.com/vontroy/archive/2010/05/24/116233.html 先说一下Java对于ACM的一些优点吧: (1) 对于熟悉C/C++的程序员来说Java 并不难学,两周时间基本可以搞定一般的编程,再用些时间了解一下Java库就行了。 Java的语法和C++非常类似,可以说是C++的升级版,只是更加强调面向对象思想而已。

2012-03-13 01:01:49 747 1

原创 poj1401(N!末尾0的末尾0的个数)

题意很好理解,给定一个N数,求N!末尾有多少个连续0? 我们知道,一个数的阶乘中含有一个10(20,30,40.。。。)都可以再末尾增加一个0,存在一个2*5,4*15.。。。也可以增加一个0;也就是说,从5开始,凡是遇到5,10,15,20,25,30,35。。。。都要增加一个0.至于5需要一个偶数来乘,偶数比5多得多,就不用考虑够不够乘的问题了。 但是其中有一点很关键。就是类似于25,12

2012-03-10 23:06:45 1194

原创 poj1256(STL--next_permunation)

note:  An upper case letter goes before the corresponding lower case letter. So the right order of letters is 'A'.B' #include #include #include #include #include using namespac

2012-03-10 14:46:38 1382

转载 poj 3422(最大费用最大流)

就是 有N*N的方阵  有一个人 要从 (1,1)  走到(n,n) 只能向右或者向下  每个位置都有 金钱。。。  当然 他走过之后 就 为0 了、、。  问 他要走K次。。  最多能拿多少钱。。   解析:   果断的最大费用网络流啊。。。  将一个点 分成 两个点   之间 连一条 容量为1 的 费用为 金钱数的 费用   再连一条 容量为k-1 费用为0 的

2012-03-09 00:37:17 670

转载 poj 2159(最小费用最大流)

大致题意: 给定一个N*M的地图,地图上有若干个man和house,且man与house的数量一致。man每移动一格需花费$1(即单位费用=单位距离),一间house只能入住一个man。现在要求所有的man都入住house,求最小费用。 解题思路: 费用流问题。 构图: 把man作为一个顶点集合U,house作为另一个顶点集合V,把U中所有点到V中所有点连线,费用cost[u

2012-03-07 05:28:31 3048

原创 poj 3070(矩阵的快速幂)

这道题的意思是通过矩阵的幂来求Fibonacci数列的第n项,且只要求出它的后4位数。 #include #include #include using namespace std; struct Matrix {     int v[2][2]; }; Matrix cheng(Matrix a,Matrix b) {   Matrix c;   for(i

2012-03-05 02:31:25 1007

转载 bupt(topsort)

#include #include #include #include #include using namespace std; const int MAXN=1000; struct node {     int v, next; }edge[100 * MAXN]; int head[MAXN], e, n, tx[MAXN], in[MAXN], txp[M

2012-03-04 16:07:12 433

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除