<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[cyc66的专栏]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/cyc66</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; cyc66]]></copyright><item><title><![CDATA[Summary Before NOIP]]></title><link>https://blog.youkuaiyun.com/cyc66/article/details/49680277</link><guid>https://blog.youkuaiyun.com/cyc66/article/details/49680277</guid><author>cyc66</author><pubDate>Fri, 06 Nov 2015 11:04:45 +0800</pubDate><description><![CDATA[1.欲速则不达，看完题要想清楚先，不用急，越是追求速度，急，出错的概率越大。反而更慢。 
2.认真对待暴力。像对待正解一样。进行必要的检验。 
3.MLE。 
4.做题前，后，都要仔细读一遍题面，及细节。 
5.对于没把握的正解，在时间不是十分充足情况下，先写暴力。 
6.没拍的，就是错的。 
7.静态调试应该看两遍，一遍大意，一遍下标。 
8.最后一小时若有暴力没打，则优先暴力。]]></description><category></category></item><item><title><![CDATA[联考模拟4]]></title><link>https://blog.youkuaiyun.com/cyc66/article/details/48809019</link><guid>https://blog.youkuaiyun.com/cyc66/article/details/48809019</guid><author>cyc66</author><pubDate>Tue, 29 Sep 2015 17:19:23 +0800</pubDate><description><![CDATA[这两天的题可以说是真noip模拟。 
除了D2T1，每道题都是五分钟出思路。至于D2T1是我自己知识点的漏洞，字符串学了那么久了，居然manerche都不知道。只是隐约听过。考场上直接写了hash二分，也好，漏洞得到了弥补。 
但是分数异常的低：总结下吸取教训。 
D1T2 二分答案有精度问题，以后要注意这方面。l=m-0.0001，比较好。 
循环次数可以强制做个Log2(Range)Log_2(]]></description><category></category></item><item><title><![CDATA[联赛联考3]]></title><link>https://blog.youkuaiyun.com/cyc66/article/details/48738381</link><guid>https://blog.youkuaiyun.com/cyc66/article/details/48738381</guid><author>cyc66</author><pubDate>Fri, 25 Sep 2015 21:08:59 +0800</pubDate><description><![CDATA[策略总结 
这次策略有明显问题。对于程序的检测没有积极性，于是挂的很惨 
D1 
T1，咋一看好像很水，直接按第一印象5分钟写了出来。过了样例也没想去拍，其实连思路都是错的。 
T2感觉状态有点模糊，直接去T3了。 
T3想出了5维状态，结果脑子抽了用记忆化搜索实现，N^5不能直接开出数组。于是用map记忆化，结果发现map太慢了。于是空间时间平衡下3维数组2维map，效果还行。如果不用记忆化搜索那]]></description><category></category></item><item><title><![CDATA[联赛联考2]]></title><link>https://blog.youkuaiyun.com/cyc66/article/details/48714137</link><guid>https://blog.youkuaiyun.com/cyc66/article/details/48714137</guid><author>cyc66</author><pubDate>Thu, 24 Sep 2015 17:39:01 +0800</pubDate><description><![CDATA[策略总结 
这场联考发挥的很糟糕。该拿的分总因为一些失误流失严重。比如说爆类型损失了164分，粗心没看清输出格式少了100分。这些分如果没丢是可以排很前的。 
总的来说这次模拟题目整体不难。 
Day1 
T1怎么看都是水题，一直怀疑有坑，但其实没有。几乎全场都过了。 
T2很快想到了可持久化线段树，写完了后对拍，没拍出错，极限数据也很靠谱。 
T3时间有点不足，随手写了个spfa转移的dp水个20]]></description><category></category></item><item><title><![CDATA[NewNimGame(博弈)]]></title><link>https://blog.youkuaiyun.com/cyc66/article/details/48103337</link><guid>https://blog.youkuaiyun.com/cyc66/article/details/48103337</guid><author>cyc66</author><pubDate>Sun, 30 Aug 2015 11:43:05 +0800</pubDate><description><![CDATA[传统的Nim游戏是这样的：有一些火柴堆，每堆都有若干根火柴（不同堆的火柴数量可以不同）。两个游戏者轮流操作，每次可以选一个火柴堆拿走若干根火柴。可以只拿一根，也可以拿走整堆火柴，但不能同时从超过一堆火柴中拿。拿走最后一根火柴的游戏者胜利。本题的游戏稍微有些不同：在第一个回合中，第一个游戏者可以直接拿走若干个整堆的火柴。可以一堆都不拿，但不可以全部拿走。第二回合也一样，第二个游戏者也有这样一次机会。从]]></description><category></category></item><item><title><![CDATA[找数（线筛，容斥）]]></title><link>https://blog.youkuaiyun.com/cyc66/article/details/48102969</link><guid>https://blog.youkuaiyun.com/cyc66/article/details/48102969</guid><author>cyc66</author><pubDate>Sun, 30 Aug 2015 11:08:45 +0800</pubDate><description><![CDATA[找出第N个最小素因子是P的正整数。Input一行两个整数N和P(1<=N,P<=10^9)，保证P是素数。Output如果结果超过10^9则输出0否则输出这个数。一看到最小质因子就想到了线筛，每个数只会被其最小质因子筛去。并且只需要筛出p以内的质数。再用p以内的质数去筛，比p小的质数可以筛去不合法的，比p大的质数对我们来说毫无意义。 
然而p十分小时，线筛是跑不出来的。 
怎么办？ 
容斥，把p以内]]></description><category></category></item><item><title><![CDATA[gangs]]></title><link>https://blog.youkuaiyun.com/cyc66/article/details/48102487</link><guid>https://blog.youkuaiyun.com/cyc66/article/details/48102487</guid><author>cyc66</author><pubDate>Sun, 30 Aug 2015 10:34:49 +0800</pubDate><description><![CDATA[农场里的生活很艰苦，而且当生活很艰苦，你必须坚强起来。奶牛们形成了编号为1到M的帮派。这些帮派一开始和睦相处了一段时间，但是现在失控了！奶牛们在竞争一片大草地的控制权。奶牛之间的冲突发生在连续的若干分钟内。每一分钟有一只奶牛走进草地。如果此时草地上没有奶牛，那么这只新进去的奶牛所在的帮派就能占领这片草地。如果草地上已经被新进去的奶牛的帮派所占领了，那么这只奶牛就在草地里吃草。否则，一只属于正在占领草]]></description><category></category></item><item><title><![CDATA[Jump]]></title><link>https://blog.youkuaiyun.com/cyc66/article/details/48102267</link><guid>https://blog.youkuaiyun.com/cyc66/article/details/48102267</guid><author>cyc66</author><pubDate>Sun, 30 Aug 2015 10:17:25 +0800</pubDate><description><![CDATA[话说世界上有很多超级英雄：蝙蝠侠，蜘蛛侠，超人，名字都写不出来的人等等。在他们之中有一个叫Kickass。今天他想模仿蜘蛛侠，所以他选择了一排高楼来跳。具体来说，他选择了一列N幢高楼，从左到右标号为1到N。一开始他在第K幢高楼。不幸的是，Kickass能力非常有限，只能跳到向左或向右相邻的高楼，而且他要跳到的楼的高度必须不能大于他现在处在的楼的高度。Kickass不想自己看起来很渣渣，所以他在一些高]]></description><category></category></item><item><title><![CDATA[SelectToy(容斥)]]></title><link>https://blog.youkuaiyun.com/cyc66/article/details/48102187</link><guid>https://blog.youkuaiyun.com/cyc66/article/details/48102187</guid><author>cyc66</author><pubDate>Sun, 30 Aug 2015 10:10:06 +0800</pubDate><description><![CDATA[ABC找到N个箱子，箱子里装着一些玩具，一共有M种玩具，编号从1到M，同一种玩具可能出现在多个箱子里。ABC决定从中选择一些箱子，把这些箱子中的玩具聚集到一起，必须保证每种玩具至少出现一次。问ABC一共有多少种选择方案。Input第一行输入两个整数N和M(1<=N<=1,000,000,1<=M<=20)接下来N行，每行首先输入Ki(0<=ki<=M)，接下来输入Ki个1到M之间互不相同的数，表示玩]]></description><category></category></item><item><title><![CDATA[Screensaver<用线段树维护函数系数>]]></title><link>https://blog.youkuaiyun.com/cyc66/article/details/48101963</link><guid>https://blog.youkuaiyun.com/cyc66/article/details/48101963</guid><author>cyc66</author><pubDate>Sun, 30 Aug 2015 09:47:22 +0800</pubDate><description><![CDATA[你最近安装了一个新的屏幕保护程序，如果你离开键盘5 分钟，屏保将会显示一个有热带鱼的水族馆，水族馆的底端是由沙石形成的供鱼玩耍的地方，沙石的高度可以设置，水位也可以设置。水族馆可以看做是一个二维平面，宽看作N-1 列，最左端的横坐标为0，最右端横坐标为N-1，每个整数横坐标都对应着一个沙石的高度H_i(0<=i<=N-1)，相邻横坐标i 和i+1 之间的沙石可以看做是由(i,H_i)和(i+1,H_]]></description><category></category></item><item><title><![CDATA[棋盘游戏&&binaryA+B<Dp,Dfs_with_Mem>]]></title><link>https://blog.youkuaiyun.com/cyc66/article/details/48067171</link><guid>https://blog.youkuaiyun.com/cyc66/article/details/48067171</guid><author>cyc66</author><pubDate>Sat, 29 Aug 2015 00:19:47 +0800</pubDate><description><![CDATA[Description一个n*n（n>=2）棋盘上有黑白棋子各一枚。游戏者A和B轮流移动棋子，A先走。A的移动规则：只能移动白棋子。可以往上下左右四个方向之一移动一格。B的移动规则：只能移动黑棋子。可以往上下左右四个方向之一移动一格或者两格。和通常的“吃子”规则一样，当某游戏者把自己的棋子移动到对方棋子所在的格子时，他就赢了。两个游戏者都很聪明，当可以获胜时会尽快获胜，只能输掉的时候会尽量拖延时间。]]></description><category></category></item><item><title><![CDATA[JSOI2013编程作业]]></title><link>https://blog.youkuaiyun.com/cyc66/article/details/48065881</link><guid>https://blog.youkuaiyun.com/cyc66/article/details/48065881</guid><author>cyc66</author><pubDate>Fri, 28 Aug 2015 23:53:56 +0800</pubDate><description><![CDATA[大致问题是给你两个串，S与T，要求求S有多少子串与T匹配。匹配定义为两个串大写字母位置及内容一模一样，小写字母是可替换的。详见样例Input3   //数据组数AiBjCiDECjDiFGCAaBiCaDECiDaFGCcDEcDEbDEaDEbDEccddefaabOutput112这题可以用Hash解决 
对于小写字母，我们记录一个小写字母与上一个和它相同的小写字母的距离la[]，和下一个与他相]]></description><category></category></item><item><title><![CDATA[【ZJOI2013】K 大数查询 ( 树状数组套线段树 ）]]></title><link>https://blog.youkuaiyun.com/cyc66/article/details/47815705</link><guid>https://blog.youkuaiyun.com/cyc66/article/details/47815705</guid><author>cyc66</author><pubDate>Thu, 20 Aug 2015 20:50:16 +0800</pubDate><description><![CDATA[Description有n 个位置和m 个操作。操作有两种，每次操作如果是1 a b c 的形式，表示往第a 个位置到第b 个位置每个位置加入一个数c。如果操作形如2 a b c 的形式，表示询问从第a 个位置到第b 个位置，第c 大的数是多少。Input在输入文件sequence.in 中，第一行两个数n,m。意义如题目描述。 
接下来m 行每行形如1 a b c 或者2 a b c 如题目描述。]]></description><category></category></item><item><title><![CDATA[物理( 线段树套单调队列 ）]]></title><link>https://blog.youkuaiyun.com/cyc66/article/details/47789519</link><guid>https://blog.youkuaiyun.com/cyc66/article/details/47789519</guid><author>cyc66</author><pubDate>Wed, 19 Aug 2015 22:36:02 +0800</pubDate><description><![CDATA[sg站在1号点，后面有他的n-1个小弟。现在妹子想告诉sg一些话，但是她不知道选谁。由于sg的小弟们构造奇特，他们能听到的声波频率也是不一样的。第i个人可以发出并接收声波频率为[xi,yi]的声音，并且每个人的声音最多只能传播不超过l的距离。每一次说话并被另一个人接收到的过程都要消耗1单位时间。现在给出所有人能发出并接收的声波频率的范围和位置，sg的妹子想知道，每个小弟传话给sg要多久。由于sg很牛]]></description><category></category></item><item><title><![CDATA[TeleTable( Data Structure { Trie && SegmentTree} )]]></title><link>https://blog.youkuaiyun.com/cyc66/article/details/47734005</link><guid>https://blog.youkuaiyun.com/cyc66/article/details/47734005</guid><author>cyc66</author><pubDate>Mon, 17 Aug 2015 22:43:46 +0800</pubDate><description><![CDATA[在幻想乡拨打不同的电话号码收费标准是完全不同的。博丽神社有一个古老的费用表，来确定拨打电话的花费。每一个幻想乡的电话号码由11 位数字组成。费用表共有N 行，每一行给出一个号码的前缀范围和对应收费标准的名称。对于给出的前缀，如4239-241 ，指所有的前缀为4239,4240,4241 的电话号码。要确定拨打每个号码的收费标准，需要从费用表的第一行开始依次向下查找，第一个匹配的号码前缀范围所对应的]]></description><category></category></item><item><title><![CDATA[送票]]></title><link>https://blog.youkuaiyun.com/cyc66/article/details/47733883</link><guid>https://blog.youkuaiyun.com/cyc66/article/details/47733883</guid><author>cyc66</author><pubDate>Mon, 17 Aug 2015 22:35:06 +0800</pubDate><description><![CDATA[Mirko朋友的住所都可以用直角坐标系来表示。他在走路的时候，只能经过整数坐标点。他走一步可以移动到相邻的八个整数坐标点（上，下，左，右，上左，下左，上右，下右）。Mirko的每个朋友住在一些整数坐标点（x，y）上，而且愿意走一段距离去见Mirko。具体来说，Mirko可以在离他朋友家里不超过P步的地方见他的朋友，P取决于他朋友的慵懒程度。当他完成派送门票的事后，Mirko回想起了他见朋友的顺序。计]]></description><category></category></item><item><title><![CDATA[图]]></title><link>https://blog.youkuaiyun.com/cyc66/article/details/47733805</link><guid>https://blog.youkuaiyun.com/cyc66/article/details/47733805</guid><author>cyc66</author><pubDate>Mon, 17 Aug 2015 22:29:57 +0800</pubDate><description><![CDATA[给你一个有向图，并指定起点为1和终点为2。问要从起点走向终点，再从终点走向起点，最少需要走过多少不同的节点。 考虑动归 
在这种图上，要注意可以用spfa来转移 
构出反图，原问题变成了正图从st到end，与反图st到end最少能经过几个城市。 
令f[i][j] 为正图走到i，反图走到j的最小答案。 
spfa每次正图走一步，反图走一步，松弛操作更新f。 
但是这样是不够的，考虑到i，j如果交换了]]></description><category></category></item><item><title><![CDATA[第一字符串(Trie&&Topology)]]></title><link>https://blog.youkuaiyun.com/cyc66/article/details/47733639</link><guid>https://blog.youkuaiyun.com/cyc66/article/details/47733639</guid><author>cyc66</author><pubDate>Mon, 17 Aug 2015 22:19:26 +0800</pubDate><description><![CDATA[Bessie最近在玩字符串。她发现通过改变字母的顺序可以使一些字符串排在其他所有的字符串之前（按字典序从小到大排序）。比如说，Bessie找到了对于字符串”omm”,”moo”,”mom”,和”ommnom”，她可以用标准的字母表把”mom”排在最前面，也可以用字母表”abcdefghijklonmpqrstuvwxyz”把”omm”排在最前面。但是，Bessie不能找出一个方案使”moo”或”om]]></description><category></category></item><item><title><![CDATA[生产汽车（单调队列+斜率优化）]]></title><link>https://blog.youkuaiyun.com/cyc66/article/details/47679091</link><guid>https://blog.youkuaiyun.com/cyc66/article/details/47679091</guid><author>cyc66</author><pubDate>Sat, 15 Aug 2015 09:18:15 +0800</pubDate><description><![CDATA[生产一台汽车需要从1号工人开始，当1号完成他的工作后，2号就会开始工作，然后是3号，最后当N号工人完成他的工作后，整个汽车生产完毕。工人们一共需要生产M台汽车，而且必须按照从1到M的顺序去生产。对于工人i，他完成自己的工作需要Ti的时间，而对于汽车j，组装复杂度为Fj。那么工人i花在汽车j上的时间为Ti*Fj。当某个工人完成他的工作后，他会同时把汽车交给下一个工人，没有任何时间上的延迟，因此，要保证]]></description><category></category></item><item><title><![CDATA[文章标题]]></title><link>https://blog.youkuaiyun.com/cyc66/article/details/47665335</link><guid>https://blog.youkuaiyun.com/cyc66/article/details/47665335</guid><author>cyc66</author><pubDate>Fri, 14 Aug 2015 17:42:20 +0800</pubDate><description><![CDATA[给定一棵N 个节点的树，标号从1~N。每个点有一个权值。要求维护两种操作：
C i x(0<=x<2^31) 表示将i 点权值变为x
Q i j x(0<=x<2^31) 表示询问i 到j 的路径上有多少个值为x 的节点
N <= 100000显然要用链剖， 然而直接做貌似不行，由于询问的权值只涉及到与那个权值相关的点与操作，考虑每个权值独立做，对于操作1，可以看做是在原权值上删点，新权值加点。]]></description><category></category></item></channel></rss>