摘要: 这个东西网上东西太多太多了,建议大家入门看2009年国家集训队毛杰明的论文就行了,然后hdu上有不少例题做做就行了%……母函数主要应用多的是普通的和指数型的(很少,一般都是很高端的比赛才会出现……本渣高数还没看完,等看完Tayol在搞吧)主要说下普通的需要注意的:1、对于有限的:直接数组暴力乘(当然你可以SXBK的FFT……)2、对于无限的:①由题意确定个范围转成有限的搞 ②写成闭形式,然后某些消掉,然后再转回来(针对个别无节操题,比如论文里的自创题……)这里写下常见无穷展开式的闭形式:1+x+x^2+x^3+...+x^n==1/(1-x)1/(1-x)^m= 阅读全文
posted @ 2014-02-01 00:33 Chellyutaha 阅读(184) 评论(0) 推荐(0) 编辑
摘要: TAT好长时间没打treap昨天打了下真是跪烂了……&&&(删除那个竟然写成if(o->ch[0]==NULL) o=o->ch[0];这种低级错误了卡了一晚上……)以下注意:1、maintain()在roate() insert() remove()的最后2、就是上面提到的删除那块……代码:(SPOJ 3273,treap果然效率高,4s完爆其他7s) 1 #include 2 #include 3 #include 4 #include 5 using namespace std; 6 struct wjmzbmr 7 { 8 wjmzbmr* ch[2 阅读全文
posted @ 2014-01-29 10:36 Chellyutaha 阅读(241) 评论(0) 推荐(0) 编辑
摘要: 一、Pell方程形如x^2-dy^2=1的不定方程叫做Pell方程,其中d为正整数,则易得当d是完全平方数的时候这方程无正整数解,所以下面讨论d不是完全平方数的情况。设Pell方程的最小正整数解为x0,y0则它的第n个正整数解满足xn+yn根号d=(x0+y0根号d)^n吧啦吧啦巴吧啦吧啦吧啦吧啦吧啦吧啦吧啦吧啦吧啦吧啦吧啦吧啦拉巴拉巴拉,然后随便撸撸就撸出递推式子了……OI里一般都要求第n个解,所以先暴力出最小解,然后快速幂搞,,,,,,,,,,,——————————————————————————————————————————————————————————————拓展:第II型Pell 阅读全文
posted @ 2014-01-27 22:42 Chellyutaha 阅读(1629) 评论(0) 推荐(0) 编辑
摘要: 分治虽然是基本思想,但是OI中不会出裸分治让你一眼看出来,往往都是结合到找规律里面。先来个简单的: 奇妙变换 (magic.pas/c/cpp)【问题描述】 为了奖励牛牛同学帮妈妈解决了大写中文数字的问题,牛牛妈妈特地抽出一个周末的时间带着牛牛来到梦幻儿童乐园游玩。 在游乐园,牛牛看到了一个非常有意思的游戏:游戏一开始,电脑屏幕上只有一个序列“A”,而后的每一次变化都把序列中的“A”变成“AB”,“B”变成“A”。游戏一直继续„„,最后屏幕上得到了序列“ABAABABAABAABABAABA„„”。当然更有意思的是,电脑会提出Q个询问,每次... 阅读全文
posted @ 2014-01-27 20:14 Chellyutaha 阅读(1202) 评论(0) 推荐(0) 编辑
摘要: 描述身为拜月教的高级间谍,你的任务总是逼迫你出生入死。比如这一次,拜月教主就派你跟踪赵灵儿一行,潜入试炼窟底。据说试炼窟底藏着五行法术的最高法术:风神,雷神,雪妖,火神,山神的咒语。为了习得这些法术,要付出艰辛的努力,但是回报同样十分丰厚。拜月希望你告诉他咒语的长度为多少。(你:“请问您想知道咒语的具体内容吗?”拜月:“想,但是vijos不支持special judge。”-_-原来大人物也有大人物的悲哀。。。)于是你偷偷躲在一边,想乘机看看咒语究竟是什么。突然,天空(??试炼窟底看的到天空??)出现了两条非常长的数字串,你抓狂了。究竟哪个才是真正的咒语呢?你突然想到,这两个都不是咒语(不妨称 阅读全文
posted @ 2014-01-26 23:55 Chellyutaha 阅读(621) 评论(0) 推荐(0) 编辑
摘要: 描述N个不同的颜色的不透明的长方形(1 =x2[k]||r=y2[k]||dn) { ans[col]+=(r-l)*(d-s); return; } if(l=x2[k]) cover(x2[k],r,s,d,k+1,col),r=x2[k]; if(s=y2[k]) cover(l,r,y2[k],d,k+1,col),d=y2[k]; return;}————————————————————————————————————————————————————————————方法二:矩形切割http://hi.baidu.com/oimaster/item/43dd1520adcfd6c... 阅读全文
posted @ 2014-01-26 23:08 Chellyutaha 阅读(709) 评论(0) 推荐(0) 编辑
摘要: 描述检查一个如下的6 x 6的跳棋棋盘,有六个棋子被放置在棋盘上,使得每行、每列有且只有一个,每条对角线(包括两条主对角线的所有平行线)上至多有一个棋子。0 1 2 3 4 5 6 -------------------------1 | | O | | | | | -------------------------2 | | | | O | | | -------------------------3 | | | | | | O | -------------------------4 | O | ... 阅读全文
posted @ 2014-01-26 22:33 Chellyutaha 阅读(505) 评论(0) 推荐(0) 编辑
摘要: 题目描述Description有这样的一个集合,集合中的元素个数由给定的N决定,集合的元素为N个不同的正整数,一旦集合中的两个数x,y满足y=P*x,那么就认为x,y这两个数是互斥的,现在想知道给定的一个集合的最大子集满足两两之间不互斥。输入描述Input Description输入有多组数据,每组第一行给定两个数N和P(12*2->2*2*2->2*2*2*2->……3->3*2->3*2*2->3*2*2*2->……5->5*2->5*2*2->5*2*2*2->…………从上面的我们可以看出a*p^(b-1)影响a*p^b( 阅读全文
posted @ 2014-01-25 00:45 Chellyutaha 阅读(639) 评论(0) 推荐(0) 编辑
摘要: 题目描述Description有n个砝码,现在要称一个质量为m的物体,请问最少需要挑出几个砝码来称?注意一个砝码最多只能挑一次输入描述Input Description第一行两个整数n和m,接下来n行每行一个整数表示每个砝码的重量。输出描述Output Description输出选择的砝码的总数k,你的程序必须使得k尽量的小。样例输入Sample Input3 10591样例输出Sample Output2数据范围及提示Data Size & Hint1<=n<=30,1<=m<=2^31,1<=每个砝码的质量<=2^30时间限制:1S 空间限制:1 阅读全文
posted @ 2014-01-24 23:18 Chellyutaha 阅读(557) 评论(0) 推荐(0) 编辑
摘要: 巴比伦算法是针对求根号m的近似值情况的,它的思想是这样的: 设根号m=X0,则如果枚举有答案X(XX0,当精度要求不高的时候,我们可以看成X=m/X=X0,而如果精度要求比较高,我们只需取X和m/X的平均值作为新的枚举答案X再进行操作,可以证明这样会一直逼近答案,至于做几次完全取决于精度要求。而实践证明这样求根号的速度极快% 计算数字m的平方根的巴比伦算法:% (1)先猜一个答案guess(可以将m/2作为第一个答案);% (2)计算r=m/guess;% (3)令guess=(guess+r)/2;% (4)如有必要返回第2步重复多次。步骤2和步骤3的重复次数越多, guess就越接近m的. 阅读全文
posted @ 2014-01-23 21:46 Chellyutaha 阅读(2714) 评论(0) 推荐(0) 编辑