上一页 1 ··· 18 19 20 21 22
摘要: 树状数组模版int lowbit(int x) { return x&(-x); } void add(int pos,int val)////如果要把a[i]增加v,可以通过调用如下函数实现 { while(pos <= MAXN) { tree[pos] += val; pos += lowbit(pos);//pos+lowbit(x)可以理解变成了x的父亲 } } int read(int x)//前x项和 { int s=0; while(x>0) { s += tree[x]... 阅读全文
posted @ 2012-08-12 18:22 z.arbitrary 阅读(209) 评论(0) 推荐(0) 编辑
摘要: 线段树+二分 阅读全文
posted @ 2012-08-10 19:56 z.arbitrary 阅读(162) 评论(0) 推荐(0) 编辑
摘要: 今天晚上cl叫我写的,我打开一看,一开始没什么思路,感觉很像DP,后来他说就二分就可以了。然后我突然想到这不就是四省赛热身赛的题么,而且白书上也有写题解。。o(︶︿︶)o 唉,题没做还是不熟悉。因为是把天数化成连续的几段,所以把答案进行二分查找,每个答案可以用线性的时间判断对错,因此总的时间是nlogn。#include <cstdio>#include <cstring>#include <iostream>#define MAXN 100050using namespace std;int g[MAXN];int s;int N,M;bool solve 阅读全文
posted @ 2012-08-04 00:55 z.arbitrary 阅读(158) 评论(0) 推荐(0) 编辑
摘要: 开始感觉这题像一个大数01背包,好像遇见过好几道这样的题,但一直不会写。。今天看了slon神的题解,感觉很神奇!他的把n个点分成两堆,然后再分别枚举,最后再利用贪心组合。先写个随笔放这,防止以后忘记了,o(︶︿︶)o 唉,记性不好是硬伤啊!!!#include <iostream>#include <cstdio>#include <cstring>#include <algorithm>#define MAXN 1<<16using namespace std;int g[2][MAXN];int val[50];int N,M;i 阅读全文
posted @ 2012-07-30 16:25 z.arbitrary 阅读(332) 评论(2) 推荐(0) 编辑
摘要: int exGcd(int a, int b, int &x0, int &y0){ if(b==0) { x0 = 1; y0 = 0; return a; } int r = exGcd(b, a % b, x0, y0); int t = x0; x0 = y0; y0 = t - a / b * y0; return r;}/*求方程ax+by=c的整数解函数返回a b的最大公约数(记作gcd(a,b)) ,并顺带出ax+by=gcd(a,b)的一组解 x0 y0如果c%gcd(a,b)!=0则无整数解否则通解为(t为任意整... 阅读全文
posted @ 2012-07-21 23:08 z.arbitrary 阅读(145) 评论(0) 推荐(0) 编辑
摘要: 好吧,在多校第一场中0题了,。。弱菜的我深受打击。。1001看都看不懂。。其实可以写出一题的1009,开始也是按题解那样写的,不过后来想自己bfs,不想建路。结果悲剧的是超内存的,很郁闷啊。o(︶︿︶)o 唉。第一次就以0题结束,真是弱。。真心弱啊!!!在这里鄙视一下自己。。后来写了下,发现优先队列的优先级搞反了,都怪之前没写过优先队列。。o(︶︿︶)o 唉,总结:还是太弱。 阅读全文
posted @ 2012-07-20 12:55 z.arbitrary 阅读(138) 评论(2) 推荐(0) 编辑
上一页 1 ··· 18 19 20 21 22