﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>C++博客-c++&amp;oi</title><link>http://www.cppblog.com/zyn1996/</link><description /><language>zh-cn</language><lastBuildDate>Tue, 14 Apr 2026 08:42:00 GMT</lastBuildDate><pubDate>Tue, 14 Apr 2026 08:42:00 GMT</pubDate><ttl>60</ttl><item><title>USACO总结</title><link>http://www.cppblog.com/zyn1996/archive/2012/06/02/177237.html</link><dc:creator>zyn.cpp</dc:creator><author>zyn.cpp</author><pubDate>Sat, 02 Jun 2012 12:23:00 GMT</pubDate><guid>http://www.cppblog.com/zyn1996/archive/2012/06/02/177237.html</guid><wfw:comment>http://www.cppblog.com/zyn1996/comments/177237.html</wfw:comment><comments>http://www.cppblog.com/zyn1996/archive/2012/06/02/177237.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/zyn1996/comments/commentRss/177237.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/zyn1996/services/trackbacks/177237.html</trackback:ping><description><![CDATA[写在xls里面了，可以参考nocow版的doc。<br />马鞍山的同学做的时候帮我看看我写的对不对啊。<br /><br />广告：<br />我做的丑陋的USACO，大家做的同时帮我参看以下，如果你的方法比我好，或发现我的解法是错的，或者看不懂我的xls里面写的话，请及时告诉我，尤其是马鞍山的同仁们啊。<br />下载地址：<a href="http://dl.dbank.com/c0ecq94jha">http://dl.dbank.com/c0ecq94jha</a><img src ="http://www.cppblog.com/zyn1996/aggbug/177237.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/zyn1996/" target="_blank">zyn.cpp</a> 2012-06-02 20:23 <a href="http://www.cppblog.com/zyn1996/archive/2012/06/02/177237.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>SGU计划</title><link>http://www.cppblog.com/zyn1996/archive/2012/06/02/177216.html</link><dc:creator>zyn.cpp</dc:creator><author>zyn.cpp</author><pubDate>Sat, 02 Jun 2012 09:35:00 GMT</pubDate><guid>http://www.cppblog.com/zyn1996/archive/2012/06/02/177216.html</guid><wfw:comment>http://www.cppblog.com/zyn1996/comments/177216.html</wfw:comment><comments>http://www.cppblog.com/zyn1996/archive/2012/06/02/177216.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/zyn1996/comments/commentRss/177216.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/zyn1996/services/trackbacks/177216.html</trackback:ping><description><![CDATA[先做AC人数》1000的<br />然后800.。。<img src ="http://www.cppblog.com/zyn1996/aggbug/177216.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/zyn1996/" target="_blank">zyn.cpp</a> 2012-06-02 17:35 <a href="http://www.cppblog.com/zyn1996/archive/2012/06/02/177216.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>迎接初中同学——整理OI知识点（building）</title><link>http://www.cppblog.com/zyn1996/archive/2012/05/31/176954.html</link><dc:creator>zyn.cpp</dc:creator><author>zyn.cpp</author><pubDate>Thu, 31 May 2012 09:25:00 GMT</pubDate><guid>http://www.cppblog.com/zyn1996/archive/2012/05/31/176954.html</guid><wfw:comment>http://www.cppblog.com/zyn1996/comments/176954.html</wfw:comment><comments>http://www.cppblog.com/zyn1996/archive/2012/05/31/176954.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/zyn1996/comments/commentRss/176954.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/zyn1996/services/trackbacks/176954.html</trackback:ping><description><![CDATA[这次省赛被初中小朋友虐爆了。<br />然后中考快（到了）结束了。<br />迎接一下初中的小朋友。<br />整理一下个人认为MAS的OIer成长所需的练习。<br /><br />目录<br />零。说明<br />一。学习内容<br />二。练习题<br />三。推荐书目<br />四。资料<br /><br />零。说明<br />&nbsp;&nbsp;&nbsp;-第一部分列举了所有我所知道的要学的知识（不仅仅是的NOIP所需的知识），不要被数量吓到，具体的人我可以具体推荐学习内容。<br />&nbsp;&nbsp;&nbsp;-可以直接跳到第二部分做练习，然后对照第一部分，看看自己掌握了那些知识。<br />&nbsp;&nbsp;&nbsp;-仅代表个人观点，请以老师的要求为准。<br />&nbsp;&nbsp;&nbsp;-我也很弱，互相学习。<br /><br /><br />一。学习内容（不是很好区分难度，详见练习题）：<br />0.windos及linux基本的系统命令以及对拍方法。<br />1.基础知识（待扩展，但觉得只要做USACO就可以掌握）<br />2.搜索（我们全队都太弱了，一定要加强）<br />&nbsp;&nbsp;&nbsp;-N重循环<br />&nbsp;&nbsp;&nbsp;-BFS<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=双向<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=判重<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;+HASH（尤其是字符串HASH）<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;+分段HASH<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;+各种数据结构判重（Tire数、平衡树等）<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=A*<br />&nbsp;&nbsp;&nbsp;-DFS<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=各种剪枝<br />&nbsp;&nbsp;&nbsp;-ID-DFS<br />&nbsp;&nbsp;&nbsp;-ID-A*<br />&nbsp;&nbsp;&nbsp;-DLX<br />&nbsp;&nbsp;&nbsp;-近似算法及其他<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=模拟退火<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=遗传算法<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=随机调整<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=随机贪心<br />3.DP（主要是自己做题总结，感悟+数学能力）<br />4.字符串操作<br />&nbsp;&nbsp;&nbsp;-c++的string<br />&nbsp;&nbsp;&nbsp;-KMP<br />&nbsp;&nbsp;&nbsp;-ExKMP<br />&nbsp;&nbsp;&nbsp;-最小表示法&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;-Tire树<br />&nbsp;&nbsp;&nbsp;-AC自动机<br />&nbsp;&nbsp;&nbsp;-后缀数组<br />&nbsp;&nbsp;&nbsp;-后缀树（好像被淘汰了）<br />&nbsp;&nbsp;&nbsp;-后缀自动机【这个可以忽略】<br />5.数据结构<br />&nbsp;&nbsp;&nbsp;-链表<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=普通链表<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=跳跃表<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=Dancing links<br />&nbsp;&nbsp;&nbsp;-队列<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=普通队列<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=循环队列<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=单调队列<br />&nbsp;&nbsp;&nbsp;-栈<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=手工栈搜索<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=表达式处理<br />&nbsp;&nbsp;&nbsp;-堆<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=哈夫曼树<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=可合并堆<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;+左偏树<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;+斜堆<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;+二项堆<br />&nbsp;&nbsp;&nbsp;-并查集<br />&nbsp;&nbsp;&nbsp;-树状数组<br />&nbsp;&nbsp;&nbsp;-线段树(重点推荐)<br />&nbsp;&nbsp;&nbsp;-平衡树<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=红黑树（知道理论+会用set和map）<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=AVL<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=Treap<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=超快SBT(重点推荐)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=万能Splay(重点推荐)<br />&nbsp;&nbsp;&nbsp;-块状链表<br />&nbsp;&nbsp;&nbsp;-树链剖分（我也不知道）<br />6.图论与树<br />&nbsp;&nbsp;&nbsp;-图的联通性<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=floodfill<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=BFS分层<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=两次BFS求强连通分量<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=拓扑排序<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=关键路径<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=求环<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=欧拉回路<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=汉密尔顿回路<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=Tarjan算法<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;+求强连通分量<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;+求割点<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;+求桥<br />&nbsp;&nbsp;&nbsp;-最短路<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=floyd<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=dijstra<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=SPFA<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=dijstra+heap<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=Bellman-ford求差分约束系统<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=floyd*求最小环<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=K短路<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=限制条件最短路<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=分层图最短路<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=状态压缩最短路<br />&nbsp;&nbsp;&nbsp;-生成树<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=prim<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=Kruskal<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=prim+heap<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=破环法求最小生成树<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=动态最小生成树<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=次小生成树<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=最大价值比生成树<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=特殊生成树<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=统计生成树的个数（组合数学）<br />&nbsp;&nbsp;&nbsp;-树上问题<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-LCA和RMQ<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-节点到根的距离<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-树的直径<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-树的中心<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-任意点对间距离<br />&nbsp;&nbsp;&nbsp;- 2-SAT问题<br />7.网络流（我总结在了第三本笔记本）<br />&nbsp;&nbsp;&nbsp;-二分图<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=匈牙利算法<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=KM算法<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=覆盖集与独立集<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=最小路径覆盖<br />&nbsp;&nbsp;&nbsp;-最大流<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=DINIC<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=SAP&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=HLLP<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=有上下界的最大流<br />&nbsp;&nbsp;&nbsp;-最小割&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=求当前流的最小割<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=平面图最小割转最短路<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=闭合图<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=最小点权覆盖集与最大独立点权集<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=0/1分数规划<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=最大密度子图<br />&nbsp;&nbsp;&nbsp;-费用流&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=最短路增广费用流<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=zkw-费用流最小费用可行流<br />&nbsp;&nbsp;&nbsp;-构图技巧（请学习网络流24题，作者：郭家宝）<br />8.数论（我总结在了最终笔记本）<br />&nbsp;&nbsp;&nbsp;-gcd<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=stein算法<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=欧几里得算法<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=拓展欧几里得算法<br />&nbsp;&nbsp;&nbsp;-质数<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=MR测试<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=快速幂<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=sqrt（n）判定<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=反质数<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=算数基本定理及推论<br />&nbsp;&nbsp;&nbsp;-同余<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=威尔逊定理<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=费马小定理<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=欧拉定理<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=中国剩余定理<br />&nbsp;&nbsp;&nbsp;-进制相关<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=精制转换=高精循环小数<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=Self-number<br />&nbsp;&nbsp;&nbsp;-其他<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=px+qy命题<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=求n！位数的方法及推广<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=P^xTm！的应用<br />9.组合数学（还未学习）<br />10.计算几何（还未学习）<br />11.博弈论（还未学习）<br />12.概率论（还未学习）<br />13.高等数学与线性代数（正在学习）<br /><br />二。练习题<br />NOIP：<br />&nbsp;&nbsp;&nbsp;-USACO-C1~C4（我AC了）<br />&nbsp;&nbsp;&nbsp;-大部分NOIP真题<br />省选：<br />&nbsp;&nbsp;&nbsp;-所有NOIP真题（我差一点）<br />&nbsp;&nbsp;&nbsp;-部分NOI真题（基本没有做）<br />&nbsp;&nbsp;&nbsp;-USACO-C5~C6（我AC了）<br />&nbsp;&nbsp;&nbsp;-SGU能做多少做多少（我还没做）<br />更高更妙：（完全非我所及，但你们会超过我的）<br />&nbsp;&nbsp;&nbsp;-USACO上的各种比赛<br />&nbsp;&nbsp;&nbsp;<a href="http://www.topcoder.com/tc">- www.topcoder.com/tc</a><br />&nbsp;&nbsp;&nbsp;<a href="http://www.codeforces.com">- www.codeforces.com</a><br />&nbsp;&nbsp;&nbsp;说明：<a href="http://hi.baidu.com/buaa_babt/blog/item/522fb239ef912cdc7d1e71b5.html">http://hi.baidu.com/buaa_babt/blog/item/522fb239ef912cdc7d1e71b5.html</a> <br /><br />三。推荐书目（我买了好多书放在二中） <br /><br />四。资料（还未整理）&nbsp;<img src ="http://www.cppblog.com/zyn1996/aggbug/176954.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/zyn1996/" target="_blank">zyn.cpp</a> 2012-05-31 17:25 <a href="http://www.cppblog.com/zyn1996/archive/2012/05/31/176954.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>发现KM算法好重要</title><link>http://www.cppblog.com/zyn1996/archive/2012/05/05/173776.html</link><dc:creator>zyn.cpp</dc:creator><author>zyn.cpp</author><pubDate>Sat, 05 May 2012 12:43:00 GMT</pubDate><guid>http://www.cppblog.com/zyn1996/archive/2012/05/05/173776.html</guid><wfw:comment>http://www.cppblog.com/zyn1996/comments/173776.html</wfw:comment><comments>http://www.cppblog.com/zyn1996/archive/2012/05/05/173776.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/zyn1996/comments/commentRss/173776.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/zyn1996/services/trackbacks/173776.html</trackback:ping><description><![CDATA[费用流的时间给予流量，而KM只与边和点有关，时间复杂度不是一个级别的。。。。<br /><br />同时发现我写的DINIC比匈牙利算法还快,为什么呢？匈牙利算法是递归的吧。。。<img src ="http://www.cppblog.com/zyn1996/aggbug/173776.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/zyn1996/" target="_blank">zyn.cpp</a> 2012-05-05 20:43 <a href="http://www.cppblog.com/zyn1996/archive/2012/05/05/173776.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>小发现</title><link>http://www.cppblog.com/zyn1996/archive/2012/05/04/173674.html</link><dc:creator>zyn.cpp</dc:creator><author>zyn.cpp</author><pubDate>Fri, 04 May 2012 10:37:00 GMT</pubDate><guid>http://www.cppblog.com/zyn1996/archive/2012/05/04/173674.html</guid><wfw:comment>http://www.cppblog.com/zyn1996/comments/173674.html</wfw:comment><comments>http://www.cppblog.com/zyn1996/archive/2012/05/04/173674.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/zyn1996/comments/commentRss/173674.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/zyn1996/services/trackbacks/173674.html</trackback:ping><description><![CDATA[memcpy的速度是直接一个一个复制4～5倍<br />用法:<br />复制a[i..i+k]给b[j..j+k] <br />memcpy(b+j,a+i,sizeof(a[0])*(k+1));<br />显然a和b到类型要一样的。<img src ="http://www.cppblog.com/zyn1996/aggbug/173674.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/zyn1996/" target="_blank">zyn.cpp</a> 2012-05-04 18:37 <a href="http://www.cppblog.com/zyn1996/archive/2012/05/04/173674.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>简要的说一下</title><link>http://www.cppblog.com/zyn1996/archive/2012/05/01/173386.html</link><dc:creator>zyn.cpp</dc:creator><author>zyn.cpp</author><pubDate>Tue, 01 May 2012 12:43:00 GMT</pubDate><guid>http://www.cppblog.com/zyn1996/archive/2012/05/01/173386.html</guid><wfw:comment>http://www.cppblog.com/zyn1996/comments/173386.html</wfw:comment><comments>http://www.cppblog.com/zyn1996/archive/2012/05/01/173386.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/zyn1996/comments/commentRss/173386.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/zyn1996/services/trackbacks/173386.html</trackback:ping><description><![CDATA[简要的说一下,就是最近用电脑多了，视力有些下降。<br />反思一下，其实搞OI不须要天天做题写程序的，于是就放弃了一天两题的计划。<br />觉得大部分时间应该放在学习、思考和整理上，一周上机不超过10h（推荐8h），分两到三次<br />其它的时间应该结合书和打印的资料学习，于是后面就不怎么更新了。<img src ="http://www.cppblog.com/zyn1996/aggbug/173386.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/zyn1996/" target="_blank">zyn.cpp</a> 2012-05-01 20:43 <a href="http://www.cppblog.com/zyn1996/archive/2012/05/01/173386.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>USACO5.3.2window</title><link>http://www.cppblog.com/zyn1996/archive/2012/04/27/172968.html</link><dc:creator>zyn.cpp</dc:creator><author>zyn.cpp</author><pubDate>Fri, 27 Apr 2012 14:29:00 GMT</pubDate><guid>http://www.cppblog.com/zyn1996/archive/2012/04/27/172968.html</guid><wfw:comment>http://www.cppblog.com/zyn1996/comments/172968.html</wfw:comment><comments>http://www.cppblog.com/zyn1996/archive/2012/04/27/172968.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/zyn1996/comments/commentRss/172968.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/zyn1996/services/trackbacks/172968.html</trackback:ping><description><![CDATA[最方便的快捷的方法，当然是离散化。<br />C++里面有些东西还是不熟啊，比如那个switch<br />/*<br />USER: zyn19961<br />TASK: window<br />LANG: C++<br />*/<br />#include&lt;iostream&gt;<br />#include&lt;fstream&gt;<br />#include&lt;cstring&gt;<br />#include&lt;cstdlib&gt;<br />#include&lt;algorithm&gt;<br />//<br />&nbsp;&nbsp;&nbsp; using namespace std;<br />#define MM(a,i) memset(a,i,sizeof(a))<br />#define FOR(i,l,r) for (int i=(l);i&lt;=(r);i++)<br />#define PFOR(p,a,next) for(int p=a;p;p=next[p])<br />//<br />&nbsp;&nbsp;&nbsp; typedef long long int64;<br />&nbsp;&nbsp;&nbsp; const int INF=~0U&gt;&gt;2;<br />//<br />&nbsp;&nbsp;&nbsp; int maxp=0, minp=0;//maxp最后面的， minp最前面的 <br />&nbsp;&nbsp;&nbsp; class Window{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; public:<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int x1,y1,x2,y2,pos;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; void init(int a, int b, int c, int d){<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if(a&gt;c)swap(a,c);if(b&gt;d)swap(b,d);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; x1=a,y1=b,x2=c,y2=d,pos=minp--;}<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; double area(){return (x2-x1)*(y2-y1);}<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; };<br />&nbsp;&nbsp;&nbsp; Window&nbsp; window[256];<br />&nbsp;&nbsp;&nbsp; bool map[300][300];<br />&nbsp;&nbsp;&nbsp; int hx[50000],hy[50000];<br />&nbsp;&nbsp;&nbsp; int fx[1000], fy[1000];<br />&nbsp;&nbsp;&nbsp; double query(char ch){<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; MM(hx,0),MM(hy,0),MM(fx,0),MM(fy,0); <br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int fxn=0,fyn=0;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //step 1, 找出在ch前面的窗口<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //step 2, 离散化 <br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; FOR(i,0,255)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if(window[i].pos!=-INF)// &amp;&amp; i != ch){<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if(window[i].pos&lt;=window[ch].pos)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; hx[window[i].x1]=true,hx[window[i].x2]=true,<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; hy[window[i].y1]=true,hy[window[i].y2]=true;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; FOR(i,0,32767){<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if(hx[i])fx[fxn++]=i,hx[i]=fxn-1;//else hx[i]=-1;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if(hy[i])fy[fyn++]=i,hy[i]=fyn-1;//else hy[i]=-1;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //step 3, fillflood<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; MM(map,false);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; FOR(i,0,255) <br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if(window[i].pos!=-INF&amp;&amp;i!=ch){<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if(window[i].pos&lt;window[ch].pos){<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int bx=hx[window[i].x1],<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; by=hy[window[i].y1];<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; for(int x=bx;fx[x]&lt;window[i].x2; x++)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; for(int y=by;fy[y]&lt;window[i].y2;y++)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; map[x][y]=true;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //step 4, 计算面积百分比 <br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; double area=window[ch].area();<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int bx=hx[window[ch].x1],<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; by=hy[window[ch].y1];<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; double white=0.0;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; for(int x=bx;fx[x]&lt;window[ch].x2;x++)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; for(int y=by;fy[y]&lt;window[ch].y2;y++){<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if(!map[x][y])<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; white+=(fx[x+1]-fx[x])*(fy[y+1]-fy[y]);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return white/area;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br />&nbsp;&nbsp;&nbsp; int main(){<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; freopen("window.in","r",stdin);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; freopen("window.out","w",stdout);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; char op, ch;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int x1,y1,x2,y2,cnt=0;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; while(scanf("%c",&amp;op) != EOF){<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (op!='s')<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; scanf("(%c,%d,%d,%d,%d)\n",&amp;ch,&amp;x1,&amp;y1,&amp;x2,&amp;y2);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; else<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; scanf("(%c)\n",&amp;ch);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; switch(op){<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; case 'w': window[ch].init(x1,y1,x2,y2);break;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; case 't': window[ch].pos=minp--; break;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; case 'b': window[ch].pos=maxp++; break;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; case 'd': window[ch].pos=-INF;&nbsp;&nbsp; break;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; case 's': printf("%.3f\n", query(ch)*100); break;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; default: break;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return 0;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br /><img src ="http://www.cppblog.com/zyn1996/aggbug/172968.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/zyn1996/" target="_blank">zyn.cpp</a> 2012-04-27 22:29 <a href="http://www.cppblog.com/zyn1996/archive/2012/04/27/172968.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>二分搜索</title><link>http://www.cppblog.com/zyn1996/archive/2012/04/21/172275.html</link><dc:creator>zyn.cpp</dc:creator><author>zyn.cpp</author><pubDate>Sat, 21 Apr 2012 10:57:00 GMT</pubDate><guid>http://www.cppblog.com/zyn1996/archive/2012/04/21/172275.html</guid><wfw:comment>http://www.cppblog.com/zyn1996/comments/172275.html</wfw:comment><comments>http://www.cppblog.com/zyn1996/archive/2012/04/21/172275.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/zyn1996/comments/commentRss/172275.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/zyn1996/services/trackbacks/172275.html</trackback:ping><description><![CDATA[就是把搜索分成两个部分，时间变成sqrt（org）。<br />=AHOI07.2.3<br />=素数环<img src ="http://www.cppblog.com/zyn1996/aggbug/172275.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/zyn1996/" target="_blank">zyn.cpp</a> 2012-04-21 18:57 <a href="http://www.cppblog.com/zyn1996/archive/2012/04/21/172275.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>USACO Charper6 AC</title><link>http://www.cppblog.com/zyn1996/archive/2012/04/21/172223.html</link><dc:creator>zyn.cpp</dc:creator><author>zyn.cpp</author><pubDate>Sat, 21 Apr 2012 03:36:00 GMT</pubDate><guid>http://www.cppblog.com/zyn1996/archive/2012/04/21/172223.html</guid><wfw:comment>http://www.cppblog.com/zyn1996/comments/172223.html</wfw:comment><comments>http://www.cppblog.com/zyn1996/archive/2012/04/21/172223.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/zyn1996/comments/commentRss/172223.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/zyn1996/services/trackbacks/172223.html</trackback:ping><description><![CDATA[由于Charper5存在过于变态的搜索，&nbsp;&nbsp;Charper6比Charper5先完成了。<br />第一题，vans递推题（据说可以用状态压缩DP），我的解决方式是不能说的秘密，本地的同学有兴趣可以当面问我，反正是不易外传（就当我是看了题解然后解决的吧！）。<br />第二题rectbarn据说有两种解法，我会的当然是DP，于是就DP掉了。<br />第三题cowxor感觉属于DP，然后用树这种数据结构辅助解决。<br /><br />结合&nbsp;Charper6的标题《大赛实践》可以推测：比赛的主要内容就是DP+图论+数据结构。<br /><br />完毕。<img src ="http://www.cppblog.com/zyn1996/aggbug/172223.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/zyn1996/" target="_blank">zyn.cpp</a> 2012-04-21 11:36 <a href="http://www.cppblog.com/zyn1996/archive/2012/04/21/172223.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>在MEL和WA之间徘徊，艰难地独立地AC了cowxor</title><link>http://www.cppblog.com/zyn1996/archive/2012/04/20/172048.html</link><dc:creator>zyn.cpp</dc:creator><author>zyn.cpp</author><pubDate>Thu, 19 Apr 2012 16:22:00 GMT</pubDate><guid>http://www.cppblog.com/zyn1996/archive/2012/04/20/172048.html</guid><wfw:comment>http://www.cppblog.com/zyn1996/comments/172048.html</wfw:comment><comments>http://www.cppblog.com/zyn1996/archive/2012/04/20/172048.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/zyn1996/comments/commentRss/172048.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/zyn1996/services/trackbacks/172048.html</trackback:ping><description><![CDATA[<!--StartFragment -->

 

<div><img border="0" alt="" src="http://www.cppblog.com/images/cppblog_com/zyn1996/未命名.jpg" /><br />先是累加（xor，一开始真写成+了，结果查了那么久。。。。）&nbsp;<br />然后作差，感觉类似单调DP，有一类单调DP使用平衡树的，但这个不需要用平衡树，只要用tire树。<br />考虑到0/1性和最坏情况下树的密集度，于是写了静态完全二叉树。。。。<br />于是MLE，然后降低maxa，RT，同时降低maxt，WA。<br />然后左右斟酌提交多次，MLE或WA。<br />最后卡常数，把树的前maxt-1层用bool，最后一层用int。。。。。AC了。。。。。 
<div style="border-bottom: #cccccc 1px solid; border-left: #cccccc 1px solid; padding-bottom: 4px; background-color: #eeeeee; padding-left: 4px; width: 98%; padding-right: 5px; font-size: 13px; word-break: break-all; border-top: #cccccc 1px solid; border-right: #cccccc 1px solid; padding-top: 4px"><img id="Code_Closed_Image_002745" onclick="this.style.display='none'; Code_Closed_Text_002745.style.display='none'; Code_Open_Image_002745.style.display='inline'; Code_Open_Text_002745.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedBlock.gif" width="11" height="16"><img style="display: none" id="Code_Open_Image_002745" onclick="this.style.display='none'; Code_Open_Text_002745.style.display='none'; Code_Closed_Image_002745.style.display='inline'; Code_Closed_Text_002745.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockStart.gif" width="11" height="16"><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Code_Closed_Text_002745">被改残的代码</span><span style="display: none" id="Code_Open_Text_002745"><br /><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img id="Codehighlighter1_0_39_Open_Image" onclick="this.style.display='none'; Codehighlighter1_0_39_Open_Text.style.display='none'; Codehighlighter1_0_39_Closed_Image.style.display='inline'; Codehighlighter1_0_39_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockStart.gif"><img style="display: none" id="Codehighlighter1_0_39_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_0_39_Closed_Text.style.display='none'; Codehighlighter1_0_39_Open_Image.style.display='inline'; Codehighlighter1_0_39_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedBlock.gif"><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_0_39_Closed_Text">/**/</span><span id="Codehighlighter1_0_39_Open_Text"><span style="color: #008000">/*</span><span style="color: #008000"><br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />USER:zyn19961<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />TASK:cowxor<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />LANG:C++<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockEnd.gif" /></span><span style="color: #008000">*/</span></span><span style="color: #000000"><br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif" />#include</span><span style="color: #000000">&lt;</span><span style="color: #000000">cstdio</span><span style="color: #000000">&gt;</span><span style="color: #000000"><br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif" />#include</span><span style="color: #000000">&lt;</span><span style="color: #000000">cstring</span><span style="color: #000000">&gt;</span><span style="color: #000000"><br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif" />#include</span><span style="color: #000000">&lt;</span><span style="color: #000000">fstream</span><span style="color: #000000">&gt;</span><span style="color: #000000"><br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif" />#include</span><span style="color: #000000">&lt;</span><span style="color: #000000">iostream</span><span style="color: #000000">&gt;</span><span style="color: #000000"><br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif" />#include</span><span style="color: #000000">&lt;</span><span style="color: #000000">algorithm</span><span style="color: #000000">&gt;</span><span style="color: #000000">&nbsp;<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif" /></span><span style="color: #0000ff">using</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">namespace</span><span style="color: #000000">&nbsp;std;<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif" /></span><span style="color: #008000">//<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif" /></span><span style="color: #0000ff">#define</span><span style="color: #000000">&nbsp;MM(a,i)&nbsp;memset((a),i,sizeof(a))</span><span style="color: #000000"><br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif" /></span><span style="color: #0000ff">#define</span><span style="color: #000000">&nbsp;FOR(i,l,r)&nbsp;for&nbsp;(int&nbsp;i=(l);i&lt;=(r);i++)</span><span style="color: #000000"><br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif" /></span><span style="color: #0000ff">#define</span><span style="color: #000000">&nbsp;DFOR(i,r,l)&nbsp;for&nbsp;(int&nbsp;i=(r);i&gt;=(l);i--)</span><span style="color: #000000"><br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif" /></span><span style="color: #008000">//<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif" /></span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;typedef&nbsp;</span><span style="color: #0000ff">long</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">long</span><span style="color: #000000">&nbsp;int64;<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">const</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;INF</span><span style="color: #000000">=~</span><span style="color: #000000">0U</span><span style="color: #000000">&gt;&gt;</span><span style="color: #000000">2</span><span style="color: #000000">;<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">const</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;maxa</span><span style="color: #000000">=</span><span style="color: #000000">(</span><span style="color: #000000">8388608</span><span style="color: #000000">+</span><span style="color: #000000">2</span><span style="color: #000000">)</span><span style="color: #000000">/</span><span style="color: #000000">2</span><span style="color: #000000">;<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">const</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;maxt</span><span style="color: #000000">=</span><span style="color: #000000">20</span><span style="color: #000000">;<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">const</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;maxn</span><span style="color: #000000">=</span><span style="color: #000000">100001</span><span style="color: #000000">;<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif" /></span><span style="color: #008000">//<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif" /></span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;ifstream&nbsp;fin(</span><span style="color: #000000">"</span><span style="color: #000000">cowxor.in</span><span style="color: #000000">"</span><span style="color: #000000">);<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif" />&nbsp;&nbsp;&nbsp;&nbsp;ofstream&nbsp;fout(</span><span style="color: #000000">"</span><span style="color: #000000">cowxor.out</span><span style="color: #000000">"</span><span style="color: #000000">);<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif" /></span><span style="color: #008000">//<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif" /></span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;bit[maxt</span><span style="color: #000000">+</span><span style="color: #000000">1</span><span style="color: #000000">];<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">bool</span><span style="color: #000000">&nbsp;tree[maxa];<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;treen[maxa</span><span style="color: #000000">/</span><span style="color: #000000">2</span><span style="color: #000000">];<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;aa[maxn];<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;ans</span><span style="color: #000000">=</span><span style="color: #000000">0</span><span style="color: #000000">,ansa</span><span style="color: #000000">=</span><span style="color: #000000">1</span><span style="color: #000000">,ansb</span><span style="color: #000000">=</span><span style="color: #000000">1</span><span style="color: #000000">;<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">void</span><span style="color: #000000">&nbsp;insert(</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;i);</span><span style="color: #008000">//</span><span style="color: #008000">left:0&nbsp;right:1</span><span style="color: #008000"><br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif" /></span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">void</span><span style="color: #000000">&nbsp;match(</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;i);<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">void</span><span style="color: #000000">&nbsp;show();<br /><img id="Codehighlighter1_709_1182_Open_Image" onclick="this.style.display='none'; Codehighlighter1_709_1182_Open_Text.style.display='none'; Codehighlighter1_709_1182_Closed_Image.style.display='inline'; Codehighlighter1_709_1182_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockStart.gif"><img style="display: none" id="Codehighlighter1_709_1182_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_709_1182_Closed_Text.style.display='none'; Codehighlighter1_709_1182_Open_Image.style.display='inline'; Codehighlighter1_709_1182_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;main()</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_709_1182_Closed_Text"><img alt="" src="http://www.cppblog.com/Images/dot.gif" /></span><span id="Codehighlighter1_709_1182_Open_Text"><span style="color: #000000">{<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;MM(bit,</span><span style="color: #000000">0</span><span style="color: #000000">),MM(tree,</span><span style="color: #000000">0</span><span style="color: #000000">),MM(aa,</span><span style="color: #000000">0</span><span style="color: #000000">);<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;n,t;<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fin</span><span style="color: #000000">&gt;&gt;</span><span style="color: #000000">n;<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;bit[</span><span style="color: #000000">0</span><span style="color: #000000">]</span><span style="color: #000000">=</span><span style="color: #000000">1</span><span style="color: #000000">;&nbsp;<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;FOR(i,</span><span style="color: #000000">1</span><span style="color: #000000">,maxt)bit[i]</span><span style="color: #000000">=</span><span style="color: #000000">bit[i</span><span style="color: #000000">-</span><span style="color: #000000">1</span><span style="color: #000000">]</span><span style="color: #000000">*</span><span style="color: #000000">2</span><span style="color: #000000">;&nbsp;<br /><img id="Codehighlighter1_869_983_Open_Image" onclick="this.style.display='none'; Codehighlighter1_869_983_Open_Text.style.display='none'; Codehighlighter1_869_983_Closed_Image.style.display='inline'; Codehighlighter1_869_983_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_869_983_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_869_983_Closed_Text.style.display='none'; Codehighlighter1_869_983_Open_Image.style.display='inline'; Codehighlighter1_869_983_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;aa[</span><span style="color: #000000">0</span><span style="color: #000000">]</span><span style="color: #000000">=</span><span style="color: #000000">0</span><span style="color: #000000">;FOR(i,</span><span style="color: #000000">1</span><span style="color: #000000">,n)</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_869_983_Closed_Text"><img alt="" src="http://www.cppblog.com/Images/dot.gif" /></span><span id="Codehighlighter1_869_983_Open_Text"><span style="color: #000000">{<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fin</span><span style="color: #000000">&gt;&gt;</span><span style="color: #000000">aa[i];<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">if</span><span style="color: #000000">(aa[i]</span><span style="color: #000000">&gt;</span><span style="color: #000000">ans)ans</span><span style="color: #000000">=</span><span style="color: #000000">aa[i],ansa</span><span style="color: #000000">=</span><span style="color: #000000">ansb</span><span style="color: #000000">=</span><span style="color: #000000">i;<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;aa[i]</span><span style="color: #000000">^=</span><span style="color: #000000">aa[i</span><span style="color: #000000">-</span><span style="color: #000000">1</span><span style="color: #000000">];<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img id="Codehighlighter1_1003_1062_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1003_1062_Open_Text.style.display='none'; Codehighlighter1_1003_1062_Closed_Image.style.display='inline'; Codehighlighter1_1003_1062_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_1003_1062_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_1003_1062_Closed_Text.style.display='none'; Codehighlighter1_1003_1062_Open_Image.style.display='inline'; Codehighlighter1_1003_1062_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;FOR(i,</span><span style="color: #000000">0</span><span style="color: #000000">,n)</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_1003_1062_Closed_Text"><img alt="" src="http://www.cppblog.com/Images/dot.gif" /></span><span id="Codehighlighter1_1003_1062_Open_Text"><span style="color: #000000">{<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;match(i);<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;insert(i);<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fout</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">ans</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">ansa</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">ansb</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">"</span><span style="color: #000000">\n</span><span style="color: #000000">"</span><span style="color: #000000">;<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fin.close();<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fout.close();<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">return</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">0</span><span style="color: #000000">;&nbsp;<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockEnd.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img id="Codehighlighter1_1206_1416_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1206_1416_Open_Text.style.display='none'; Codehighlighter1_1206_1416_Closed_Image.style.display='inline'; Codehighlighter1_1206_1416_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockStart.gif"><img style="display: none" id="Codehighlighter1_1206_1416_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_1206_1416_Closed_Text.style.display='none'; Codehighlighter1_1206_1416_Open_Image.style.display='inline'; Codehighlighter1_1206_1416_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">void</span><span style="color: #000000">&nbsp;insert(</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;i)</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_1206_1416_Closed_Text"><img alt="" src="http://www.cppblog.com/Images/dot.gif" /></span><span id="Codehighlighter1_1206_1416_Open_Text"><span style="color: #000000">{<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;p</span><span style="color: #000000">=</span><span style="color: #000000">1</span><span style="color: #000000">,s</span><span style="color: #000000">=</span><span style="color: #000000">aa[i];<br /><img id="Codehighlighter1_1255_1336_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1255_1336_Open_Text.style.display='none'; Codehighlighter1_1255_1336_Closed_Image.style.display='inline'; Codehighlighter1_1255_1336_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_1255_1336_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_1255_1336_Closed_Text.style.display='none'; Codehighlighter1_1255_1336_Open_Image.style.display='inline'; Codehighlighter1_1255_1336_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;DFOR(t,maxt,</span><span style="color: #000000">0</span><span style="color: #000000">)</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_1255_1336_Closed_Text"><img alt="" src="http://www.cppblog.com/Images/dot.gif" /></span><span id="Codehighlighter1_1255_1336_Open_Text"><span style="color: #000000">{<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;tree[p]</span><span style="color: #000000">=</span><span style="color: #000000">1</span><span style="color: #000000">;<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">if</span><span style="color: #000000">(s</span><span style="color: #000000">&amp;</span><span style="color: #000000">bit[t])p</span><span style="color: #000000">=</span><span style="color: #000000">p</span><span style="color: #000000">*</span><span style="color: #000000">2</span><span style="color: #000000">+</span><span style="color: #000000">1</span><span style="color: #000000">;</span><span style="color: #0000ff">else</span><span style="color: #000000">&nbsp;p</span><span style="color: #000000">=</span><span style="color: #000000">p</span><span style="color: #000000">*</span><span style="color: #000000">2</span><span style="color: #000000">;<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000">tree[p]</span><span style="color: #000000">=</span><span style="color: #000000">1</span><span style="color: #000000">;<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">if</span><span style="color: #000000">(s</span><span style="color: #000000">==</span><span style="color: #000000">0</span><span style="color: #000000">)tree[p]</span><span style="color: #000000">=-</span><span style="color: #000000">1</span><span style="color: #000000">;<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">else</span><span style="color: #000000">&nbsp;treen[p</span><span style="color: #000000">-</span><span style="color: #000000">maxa</span><span style="color: #000000">/</span><span style="color: #000000">2</span><span style="color: #000000">]</span><span style="color: #000000">=</span><span style="color: #000000">i;<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockEnd.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img id="Codehighlighter1_1439_1793_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1439_1793_Open_Text.style.display='none'; Codehighlighter1_1439_1793_Closed_Image.style.display='inline'; Codehighlighter1_1439_1793_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockStart.gif"><img style="display: none" id="Codehighlighter1_1439_1793_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_1439_1793_Closed_Text.style.display='none'; Codehighlighter1_1439_1793_Open_Image.style.display='inline'; Codehighlighter1_1439_1793_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">void</span><span style="color: #000000">&nbsp;match(</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;i)</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_1439_1793_Closed_Text"><img alt="" src="http://www.cppblog.com/Images/dot.gif" /></span><span id="Codehighlighter1_1439_1793_Open_Text"><span style="color: #000000">{<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;anss</span><span style="color: #000000">=</span><span style="color: #000000">0</span><span style="color: #000000">,q,p</span><span style="color: #000000">=</span><span style="color: #000000">1</span><span style="color: #000000">,s</span><span style="color: #000000">=</span><span style="color: #000000">aa[i];<br /><img id="Codehighlighter1_1497_1723_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1497_1723_Open_Text.style.display='none'; Codehighlighter1_1497_1723_Closed_Image.style.display='inline'; Codehighlighter1_1497_1723_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_1497_1723_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_1497_1723_Closed_Text.style.display='none'; Codehighlighter1_1497_1723_Open_Image.style.display='inline'; Codehighlighter1_1497_1723_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;DFOR(t,maxt,</span><span style="color: #000000">0</span><span style="color: #000000">)</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_1497_1723_Closed_Text"><img alt="" src="http://www.cppblog.com/Images/dot.gif" /></span><span id="Codehighlighter1_1497_1723_Open_Text"><span style="color: #000000">{<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;q</span><span style="color: #000000">=</span><span style="color: #000000">(s</span><span style="color: #000000">&amp;</span><span style="color: #000000">bit[t])</span><span style="color: #000000">/</span><span style="color: #000000">bit[t];<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;q</span><span style="color: #000000">^=</span><span style="color: #000000">1</span><span style="color: #000000">;<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">if</span><span style="color: #000000">(q)</span><span style="color: #0000ff">if</span><span style="color: #000000">(tree[p</span><span style="color: #000000">*</span><span style="color: #000000">2</span><span style="color: #000000">+</span><span style="color: #000000">1</span><span style="color: #000000">])p</span><span style="color: #000000">=</span><span style="color: #000000">p</span><span style="color: #000000">*</span><span style="color: #000000">2</span><span style="color: #000000">+</span><span style="color: #000000">1</span><span style="color: #000000">,anss</span><span style="color: #000000">+=</span><span style="color: #000000">bit[t];<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">else</span><span style="color: #000000">&nbsp;p</span><span style="color: #000000">*=</span><span style="color: #000000">2</span><span style="color: #000000">;<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">else</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">if</span><span style="color: #000000">(tree[p</span><span style="color: #000000">*</span><span style="color: #000000">2</span><span style="color: #000000">])p</span><span style="color: #000000">*=</span><span style="color: #000000">2</span><span style="color: #000000">,anss</span><span style="color: #000000">+=</span><span style="color: #000000">bit[t];<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">else</span><span style="color: #000000">&nbsp;p</span><span style="color: #000000">=</span><span style="color: #000000">p</span><span style="color: #000000">*</span><span style="color: #000000">2</span><span style="color: #000000">+</span><span style="color: #000000">1</span><span style="color: #000000">;<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">if</span><span style="color: #000000">(anss</span><span style="color: #000000">&gt;</span><span style="color: #000000">ans)ans</span><span style="color: #000000">=</span><span style="color: #000000">anss,ansa</span><span style="color: #000000">=</span><span style="color: #000000">treen[p</span><span style="color: #000000">-</span><span style="color: #000000">maxa</span><span style="color: #000000">/</span><span style="color: #000000">2</span><span style="color: #000000">]</span><span style="color: #000000">+</span><span style="color: #000000">1</span><span style="color: #000000">,ansb</span><span style="color: #000000">=</span><span style="color: #000000">i;<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockEnd.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img id="Codehighlighter1_1810_1982_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1810_1982_Open_Text.style.display='none'; Codehighlighter1_1810_1982_Closed_Image.style.display='inline'; Codehighlighter1_1810_1982_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockStart.gif"><img style="display: none" id="Codehighlighter1_1810_1982_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_1810_1982_Closed_Text.style.display='none'; Codehighlighter1_1810_1982_Open_Image.style.display='inline'; Codehighlighter1_1810_1982_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">void</span><span style="color: #000000">&nbsp;show()</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_1810_1982_Closed_Text"><img alt="" src="http://www.cppblog.com/Images/dot.gif" /></span><span id="Codehighlighter1_1810_1982_Open_Text"><span style="color: #000000">{<br /><img id="Codehighlighter1_1835_1972_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1835_1972_Open_Text.style.display='none'; Codehighlighter1_1835_1972_Closed_Image.style.display='inline'; Codehighlighter1_1835_1972_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_1835_1972_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_1835_1972_Closed_Text.style.display='none'; Codehighlighter1_1835_1972_Open_Image.style.display='inline'; Codehighlighter1_1835_1972_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;FOR(i,</span><span style="color: #000000">0</span><span style="color: #000000">,maxt</span><span style="color: #000000">+</span><span style="color: #000000">1</span><span style="color: #000000">)</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_1835_1972_Closed_Text"><img alt="" src="http://www.cppblog.com/Images/dot.gif" /></span><span id="Codehighlighter1_1835_1972_Open_Text"><span style="color: #000000">{<br /><img id="Codehighlighter1_1873_1931_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1873_1931_Open_Text.style.display='none'; Codehighlighter1_1873_1931_Closed_Image.style.display='inline'; Codehighlighter1_1873_1931_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_1873_1931_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_1873_1931_Closed_Text.style.display='none'; Codehighlighter1_1873_1931_Open_Image.style.display='inline'; Codehighlighter1_1873_1931_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;FOR(j,</span><span style="color: #000000">1</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">i,(</span><span style="color: #000000">1</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">(i</span><span style="color: #000000">+</span><span style="color: #000000">1</span><span style="color: #000000">))</span><span style="color: #000000">-</span><span style="color: #000000">1</span><span style="color: #000000">)</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_1873_1931_Closed_Text"><img alt="" src="http://www.cppblog.com/Images/dot.gif" /></span><span id="Codehighlighter1_1873_1931_Open_Text"><span style="color: #000000">{&nbsp;<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;printf(</span><span style="color: #000000">"</span><span style="color: #000000">%d&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">,tree[j]);<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;printf(</span><span style="color: #000000">"</span><span style="color: #000000">\n</span><span style="color: #000000">"</span><span style="color: #000000">);<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockEnd.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif" /></span></span></div>USACO的空间限制到底是多少？？？？<br /></div><img src ="http://www.cppblog.com/zyn1996/aggbug/172048.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/zyn1996/" target="_blank">zyn.cpp</a> 2012-04-20 00:22 <a href="http://www.cppblog.com/zyn1996/archive/2012/04/20/172048.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>