排序:
默认
按更新时间
按访问量

Codeforces Round #316 (Div.2)Tree Requests

又是莫名RE系列… 首先一个想法,就是把字母转化成一个二进制位,因为如果一个字符出现两次,那么它们就可以被配成一对,也就是说,这两个就和没有是一样的. 那这对我们有什么帮助呢? 那就和异或一样了,两个状态合并的同时,相同为0,不同为1,这样的话,最后合并出来的状态里有的二进制1的数量必定不大于1,...

2016-11-11 21:07:50

阅读数:159

评论数:1

POI2014 Ant colony

很显然的一个想法就是通过有食蚁兽的那一条边把整棵树分成两棵树.这样就可以两边乱搞了 对于一棵子树,我们现在存一下现在的上界r和下界l,遇到一个度为k的节点,分开之后它的上界和下界会变成[l∗k,(r+1)∗k−1][l*k,(r+1)*k-1]. 然后遇到叶子节点的时候,我们在原序列中询问[l,r...

2016-11-11 11:04:41

阅读数:219

评论数:0

POI2014 Solar Lamps

第一件要干的事就是把它给你的坐标用它给你的两个向量表示出来,事实上这件事就够令人发狂了…所以开始解方程.我们有 {a∗x1+b∗x2=Xa∗y1+b∗y2=Y \begin{cases} a*x1+b*x2=X\\ a*y1+b*y2=Y \end{cases} 解得: ⎧⎩⎨a=X∗y2...

2016-11-09 21:11:12

阅读数:305

评论数:0

POI2014Little Bird

首先要想到dp,那么定义dp[i]为走到第i棵树时的最少劳累值.那么dp转移的时候就要考虑到两点之间的高度大小关系,所以要分类讨论.那么这样的dp就是O(n2)O(n^2)的了.所以考虑优化,因为我们发现一个点的dp值只可能够由它的前k个来转移,所以想到使用单调队列来优化dp.然后什么样的值才是最...

2016-11-08 19:24:16

阅读数:216

评论数:0

POI2014FarmCraft

大意: 就是给你一棵树,然后树上有n个节点,每条边的边权为1,然后每个节点有一个延时t,当你走过这个节点后,过了t时间之后,这个节点就被加入到已经经过的点的集合中,然后从1节点出发,在1节点结束,且1节点的计时只会在最后一次到1节点的时候开始. 求最少时间,能够经过所有的点. ...

2016-11-08 16:36:01

阅读数:331

评论数:0

POI2014Criminals

这道题的话,首先是一个小贪心,枚举完在哪个点相遇之后,要得到这个点向左走多远才可以完成左边的序列,向右边走多远才可以完成右边的序列.这两个都取最小,然后再看一下两边之外的地方是不是有相同的元素,这样的话就差不多了.但是这样的话预处理比较麻烦.我的话是使用dp,dp[i]定义为现在这个点开始,是到达...

2016-11-07 22:32:04

阅读数:176

评论数:0

POI2014Card

这道题的话,想法感觉也是很奇怪的…首先一个想法是如果有了第一个值,那么就可以贪心地去选取数字了,每次都选能选的最小的,这样肯定最优.那么我们就去确定这个数,即可以讨论而得出一段区间右端点最小是什么.我们可以看出,一段区间的左端点,要么是左边的第一个数,要么是左边的第二个数,然后对于一段没有被修改过...

2016-11-07 18:30:37

阅读数:255

评论数:0

POI2014Bricks

POI2014 Bricks正解的话是贪心,就是先把剩下最多的放到现在这个地方来,如果有多个最多的,那么就把颜色与最后一个颜色相同的取出来,不然就随便放一个.然后用堆来维护这个信息,所以正解是O(nlogn)O(nlogn)的.#include<cstdio> #include<...

2016-11-07 15:26:00

阅读数:138

评论数:0

POI2014Salad Bar

POI2014 Salad Bar这道题的大意就是给你一个字符串,里面只含有p和j,求一个最长的子串,使得从左边开始,p的个数一直比j多,从右边开始也一样.这道题的话,一开始想歪了,就先对每个字符,算出来以它为起点往右最多能在哪里,然后再算出来以它为起点往左最多能走到哪里,这样的话,一个满足条件的...

2016-11-04 20:02:41

阅读数:133

评论数:0

NOIP复赛的各种模板

一:文件读入输出freopen("Add.in","r",stdin); freopen("Add.out","w",stdout);就是类似于这种,比如一道题目的文件名为Add,那么就可以通过这样的格式来完成读入以及...

2016-11-04 15:24:08

阅读数:841

评论数:2

Topcoder SRM 701 Div2

Topcoder SRM 701 Div2话说终于又回到了Div1的坑里.上一把掉得太惨了啊…黄名掉到绿名…SquareFreeString这题还是很简单的吧(zqh被&和==的优先级坑了呢,重回灰名的他...).这道题就是在一个字符串中找一个子串,如果这个子串为两个相同的串拼接而成,那么...

2016-10-27 18:49:04

阅读数:473

评论数:0

2016-2017 ACM-ICPC, NEERC, Southern Subregional Contest (Online Mirror, ACM-ICPC Rules, Teams Prefer

2016-2017 ACM-ICPC, NEERC, Southern Subregional Contest (Online Mirror, ACM-ICPC Rules, Teams Preferred)话说这场比赛就是被小C叫过来水了一场啊...然后就和机房里的人组了个队(一人rating撑...

2016-10-25 12:41:34

阅读数:812

评论数:0

[BZOJ2154] Crash的数字表格

[BZOJ2154] Crash的数字表格题目的意思就是求出∑ni=1∑mj=1lcm(i,j)\sum_{i=1}^{n}\sum_{j=1}^{m}lcm(i,j).我们可以把问题进行转换,有: ∑i=1n∑j=1mlcm(i,j)=∑i=1n∑j=1mi∗jgcd(i,j)\sum_{i=...

2016-10-20 18:12:00

阅读数:239

评论数:0

莫比乌斯反演

莫比乌斯反演最近学了一下莫比乌斯反演(实际只学了2天,旁边cchyh还一直吵吵吵),所以还是来写写现在能写出来的东西吧.莫比乌斯反演,指的是对于一个数论函数F(n)F(n),有 F(n)=∑d|nf(d)F(n)=\sum_{d|n}{f(d)}这里f(d)f(d)是另一个数论函数,那么就会有 ...

2016-10-20 16:30:42

阅读数:249

评论数:0

Codeforces Round #376 (Div. 2)

这次还好吧,总算进紫名了(25分比了3场才加上去...也是可以),而且还在这个晚上写完了所有题. 话说这次也太水了,F题和它的难度不成正比,所有题的代码都短的可以,除了WA了两次的D题. E题没看太亏了,几乎一模一样的题都做过… 好了好了开始讲题目… A:Night at the Mus...

2016-10-17 07:44:17

阅读数:449

评论数:5

Codeforces Intel Code Challenge Final Round (Div. 1 + Div. 2, Combined)

因为自己太水了所以写不出多少题目,昨天只写了3道,至少没掉分嘛对吧.(明明是第4题题目看了好久才看懂……) C Ray Tracing Task: 一个n*m的矩阵中有k个点,你现在有一道从(0,0)向外发射的光线,它能够沿y=x这条直线射,其反射遵从光的反射定律,每秒钟它能够经过...

2016-10-09 16:52:53

阅读数:263

评论数:0

Codeforces Round #375 (Div. 2)

只写了5题所以只说5题…… A Task: 坐标轴上有三个点,求它们到坐标轴上某个点的距离和的最小值. Solution: 显然只要选个最大值和一个最小值相减的差就是答案了,表示它们在中间相遇. 于是这题就不发代码了. B Task: 给你一个字...

2016-10-04 16:32:00

阅读数:160

评论数:0

Miller Rabin

正常的素数判定,要么是直接枚举因子,通过根号n的复杂度来完成,这样时间可能不够,又或是先通过打表之后,去查表,可是这样空间复杂度过大.所以说,对于小于1e18的数,这些方法是毫无作用的.那么怎么来判断小于1e18的数是否为素数呢?这里就要用到即将介绍的Miller Rabin素数判定法.这个算法的...

2016-10-02 15:07:11

阅读数:277

评论数:0

Poi2010 Railway

Task: A railroad siding consists of two (dead-end) sidetracks 1 and 2. The siding is entered by track A, and left by track B (see figure below). ...

2016-10-02 15:06:46

阅读数:585

评论数:0

Poi2010 Divine Divisor

Solution:首先我们想到吧所有的数质因子分解,所得到的每个质因子的个数的和的最大值就是要求的k,而我们设这个最大值出现的次数为m,则我们可以知道,任意个这样的质因子的乘积都是可行的一种解,所以第二个答案就是2^m,注意到这个值可能会很大,所以我们要用高精乘法.那么我们再观察一下现在这个数的范...

2016-10-02 15:04:37

阅读数:320

评论数:0

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