10 2017 档案
摘要:总结一下昨天的考试 T1,正解是单调队列,就是用递增的单调队列,维护一个被扔掉的最小值,然后往回拿的时候就直接查询队首就行了;然而我打了一个动态开点的线段树,结果自己造的数据在本机上跑要7s多,然后绝的过不了,就想拿一个部分分,然后就没有异或,结果评测机跑5s多就跑完了,改了异或就能A,爆炸30分
阅读全文
摘要:27: 这次考试时间安排的还不错,T1估计自己打不出来,弃的很果决,然后,后面拿到了不少的分数; 其实也是想到了二分的方法,只是打完30分的暴力就一个小时了,然后不得不弃了,T2是个各种树的东西,T3还好,自己推了出来,就是当时没有想到怎么用前缀和优化; 28: 昨天刚好一点今天就爆炸了,T1很水,
阅读全文
摘要:今天的考试; T1,炸了int,10分 T2,比较水,但用了挺长的时间 T3,暴力觉得可以70,但是之后50,正解不是特别难,没怎么想; 那么今天的教训是,首先int,LL,一定要弄好 然后就是,在打暴力之前,先想一段时间的正解,然后再打暴力,不然会浪费许多时间
阅读全文
摘要:昨天的考试: T1,原题 T2,好吧,我想到正解了,然而我并没有看到1024的内存限制,然后我开了一个10000×100的数组,然后....我按正解转移的,全RE了,就拿了20分。好吧其实就算看到了内存限制,这题也A不掉,树归合并子树的时候,一定要先更新,然后再在now上加上size,因为这样转移才
阅读全文
摘要:今天的考试比较简单,不少人AK了,可能是因为T3的数据比较水,但是可能我还是没有拼尽全力的去想办法拿到每一分吧,像T3就是能优化就优化,明明是有办法枚举子集的,然后觉得过不了极限数据,然后就草草的打了一个最最暴力的30分,然后就是稳稳的30分,还是要尽力的拿分 老爷机的话还是能优化就优化
阅读全文
摘要:昨天的考试T1居然没考虑二分,这种题应该一眼就看出来是一个实数二分,然后用并查集判一下,再减一个枝就好 T2,在分析这道题的时候,思维很混乱,不知道从何下手,觉得像是DP,但是不知道怎么转移,其实就是考虑每一条线,从上一条线的那一个位置转移能保证这条线之前的所有线都被覆盖,如果能想到这的话,那么那个
阅读全文
摘要:T1,水题 T2,想到了70分做法,其实1,2串已经给了O(n)验证的提示,然后我们二分一个答案,然后就可以把大于它的标成1,剩下的标成2,然后验证答案,若答案为1,那么将右边界左移,反之左端点右移; 注意一下边界就可以得到答案, T3,树剖+线段树,我差在了以下两点: 1、没有分析出来当有合法方案
阅读全文
摘要:这个题很清真 就是可以考虑将删除的边倒叙插入,因为题面中说了,保证删了所有边之后,保证图的连通性 ,所以先在删完点的图上缩点,然后剩下的边就是关键边,之后再把删除的边插入,这样就会使得之前的一些点之间的关键边的不关键,之后用线段树维护就行了 1 #include <set> 2 #include <
阅读全文
摘要:总结一下昨天的考试 T1,真真的卡了一波读题,出题人呢可能思维混乱了,他分不清立方体和正方体和小方块,搞得我看得一脸懵逼,其实可以用一个ST表维护一下最值,然后就直接二分长度,然后枚举每一个长度check就行了 T2,很正的找到了规律,然后分段打一个表就行了 T3.....
阅读全文
摘要:T1裸的割点 T2,手贱多了个没用的特判,还多了个等号,被卡70, T3,其实树上的和区间上的是一样的,只不过是区间上的是按照一个端点来贪心,然后树上是按照lca来贪心
阅读全文
摘要:10.17 T1是个数论题,弄出来了一堆结论(题解说这很显然,然而我并不明白),然后就可以直接筛了 T2,在考试的时候我想到了正着推去找到每一个元素的时候的有1的个数,我是直接弄了一个结构体来存每一个点1的个数的上下界,但是没有关注到XOR得到的1的个数范围不是连续的,而是跳着的,而且我没有成功的逆
阅读全文
摘要:很难的一道题 首先第一问,如果没有高度相同的,因为只有比他高的会产生影响,所以降序排序,然后从大往小往里插入,那么可插入的位置的个数就是min(i,key),然后我们考虑有重复的,若不考虑之前已经插入过的相同高度的,方案数仍然是min(i,key),那么现在矛盾的就是,新插入的关键字和之前的关键字的
阅读全文
摘要:了了已久的心结 f[i][j]表示到第i为,长度为j的后缀与不吉利数字的前缀相同,其实这个和一些期望概率的DP类似,利用a数组记录当前j在加上不同的数字之后,可以分别转移至那些状态,用KMP处理一下,然后矩阵快速幂就行了 Code 1 #include <cmath> 2 #include <cst
阅读全文
摘要:向量是可以被基地唯一分解的,然后就和昨天的T3一样了 在计算x_的时候居然没注意最大可以变成500000,然后最开始设的最大值是100000,然后就一直wa Code 1 #include <cmath> 2 #include <cstdio> 3 #include <cstdlib> 4 #inc
阅读全文
摘要:树DP+组合数 网上题解很多,这里就放个有注释的代码 CODE 1 #include <cmath> 2 #include <cstdio> 3 #include <cstring> 4 #include <cstdlib> 5 #include <iostream> 6 #include <alg
阅读全文
摘要:很难理解的一个DP 首先先说明两个状态数组,f[i][j]表示当前序列的长度为i,最后一位是第j小,且第i位为山谷的方案数,同理g[i][j]表示f[i][j]表示当前序列的长度为i,最后一位是第j小,且第i位为山峰的方案数; 那么f就是能从g转移过来, 那么f[i][j]就等于g[i-1][k]
阅读全文
摘要:BZOJ[4563] [Haoi2016]放棋子 这个题是由套路的,可以直接用错排公式,首先f[1]=0,f[2]=1,然后考虑后面的转移,当放第i个的时候,前面的只可能是i-1个全部都不在自己的位置或者只有1个不在自己的位置,对于前者,第i个可以和前i-1个中的任意一个互换位置,贡献就是f[i-1
阅读全文
摘要:今天的考试: T1,在刚开始学字符串的时候就做过类似的题,当时还只能是用栈模拟,结果今天依然是用栈模拟,然后就是莫名的挂了,后来改成了区间DP,突然发现用区间DP好简单 T2,比较水 T3.又是一道组合数的题,开始我想的是把每一个不合法的点的不合法状态求出来,然后再利用容斥原理的到答案,后来发现并不
阅读全文
摘要:总结一下今天的考试 T1的60分算法其实就是枚举然后找寻环节,然后我傻傻的以为第一对数一定在循环里面,其实并不这样,加入第一对是奇数,那么之后的所有数对就都是偶数,第一对不再循环里面; 可以用map搞一搞; 正解是A拿的时候即使2*n,B拿的时候是n-(tot-n)==2*n-tot,可以发现其实就
阅读全文
摘要:这个题...就算解不了异或方程组也是要写一写式子的 行列都是偶数也应该是异或偶数次能消掉的提示 那么假设当前的目标状态是把所有的点都变成0; 设X[i][j]为这个点有没有被操作; 那么对于一个点列出出来的方程就是这个点所在行,列所有点的X值在异或他的初始状态为0,然后把这行 这列所有点的方程异或起
阅读全文
摘要:这个题比起暑假集训杀人游戏wq讲的方法来,简化了100倍 首先可以发现,每个人都只恨一个人,如果由此人向他恨的人连边的话,显然每个人之后1个出边,但是会有多个入边,然后其实一条边的作用就是两个端点不能同时出现,那么这个边的方向是无所谓的,所以把所有的边反向,那么这个图就像一棵树了,但还是会有环的情况
阅读全文
摘要:题比较水,T1是裸的卢卡斯,T3是简化版原题 然后T2是个同构树,用哈希搞一搞就行 虽然卢卡斯有点虚,同构树第一次打,但好在AK了
阅读全文
摘要:T1,是个二分,不过我二分的是前几个时刻上山,然后就因为每次最多但不一定走d的距离,然后处理起来就有很多的细节,然后不放心,弄了个暴力拍了半天,搞了大概40min,正解是直接二分答案,然后判断上山的时间加上下上的时间是不是小于n-1就行了,简单清新: T2,主要不好处理的就是如何找到最大值为K的集合
阅读全文
摘要:通过这个题,新学了一个线性基; 这个东西就是用尽量少的数,使他们之间相互异或时候的值域和原值域相等; 性质: 1.这个东西异或不出来0; 2.当d[n]数组是满的时候,他的值域是[1,(1<<n)-1]; 然后就能判断当前的数能不能被之前的数XOR表示出来 然后就把所有的矿石从大到小插入就行了(如果
阅读全文
摘要:今天T1是一道原题,也确实是往原体上想了,然后就莫名其妙的否定了自己的觉得这是个原题,然后自己YY了一个公式,还用到了前两天学的组合数里的插板法,然后后来发现有一堆重复的情况,后来又看了看题解,终于明白了卡特兰数n,m不等的时候是怎么得出来的,不过这题只拿到了20分太亏了 T2,没有想到正解,然后根
阅读全文
摘要:这个题的正解和之前做过的网络流的文理分科差不多,都是一个把对两个点都有贡献的边的贡献分别加给两个点; 在这个题里,首先考虑阿狸拿走了所有的边权与点权,那么现在桃子的分数为0,阿狸的分数为所有权值的加和,那么考虑桃子选每一个点所造成的贡献,每当桃子选了一个点v,则桃子的分数加上w[v],阿狸的分数减去
阅读全文
摘要:首先,n比较小,可以枚举,那么我们就可以枚举到底插入哪一张牌,然后开始想的方法是直接按照一种贪心的策略来判断是否合法,但是总是没有办法覆盖到所有的情况所以可以在枚举到底是哪两张牌做对,然后就是保证剩下的牌能全部三个三个的打出就行了; 具体办法就是从1到n,每一个数都%3,然后用后两个数减去他的模数,
阅读全文
摘要:第二道大模拟 1 #include <cmath> 2 #include <cstdio> 3 #include <cstdlib> 4 #include <cstring> 5 #include <iostream> 6 #include <algorithm> 7 using namespace
阅读全文
摘要:第一道大模拟 1 #include <cmath> 2 #include <cstdio> 3 #include <cstdlib> 4 #include <cstring> 5 #include <iostream> 6 #include <algorithm> 7 # define maxBat
阅读全文
摘要:因为猪国杀的原因,这两天的总结推迟了一下 10.09 那天考完了之后情绪还是很低落的 在考试的时候,发现三道题都想不到正解,然后就把暴力分都打了,然后觉的第二题是个图论,应该会有些思路,然后就去向,但是越想越复杂,然后考完试发现,有没有理解题意,题目中说的间谍会死的情况,是存在一条路径,而不是两个城
阅读全文
摘要:昨天的考试T1做的还可以 T2又是没看好题,看来题解之后还是有审题错误,为什么看不懂题呢? T3又是道不会的概率,但是连10分也没有骗到 我为什么就是不能准确理解题意呢,今天的考试每道题至少读三遍,觉得没有疑点了在做题
阅读全文
摘要:T1:第一道题其实就是一个贪心,这几次考试考完,发现自己并不能很快的找到贪心的贪心方法,而且也找不太对,总是找不到一种正确性显然的贪心方法,然后再写的时候,就会一直怀疑自己的贪心方法,不过这几次做的贪心都是序列上的,共同点就是都用了指针来精确的确定一些位置来进行贪心,贪心其实没有什么固定的套路,其实
阅读全文
摘要:发现自己越来越弱了 T1的就是一个模拟,一个一个的是很好处理的,我非得整块整块的处理,结果弄了半个多小时都没有弄出来,然后强行找规律,用了整整一个小时,wq说他10min就A了,什么东西,每次这种简单的题都要用掉大量的时间,思维总是在走弯路,不够直接,还是不灵活,太局限了,这种简单题其实就是分析分析
阅读全文
摘要:对于昨天的考试,可以说是把暴力分都拿到了 T1 的搜索方式还是根据了这道题的性质,就是总的步数很少,然后再贪心的由小往大的更新,这样时间效率几乎就是O(N)的;想要做出来这道题,首先就是要分析出来 往回走的步数其实是非常少的,至于如何分析出来,就可以直接打一个暴力,用一些时间搞出一些大数据的答案,然
阅读全文
摘要:这个题是一道dp 虽然是一个二维的矩阵,但是状态转移方程表示的却是有一维 f[i][j] 表示到第i列,有j行的右区间中有一个1 考虑如何转移,枚举每一列,因为j表示的是有区间有多少已经有1,那么左区间是不用一开始就考虑的,因为只考虑左区间的话,那么肯定是先往小的里放,所以我们可以在每一次扫到一个左
阅读全文
摘要:/*cmath库*/ 1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7 # define maxn 1010 8 # define pi 3.14159265358 9 using namespace std; 10 void ot(){coutfabs(g[i].r-g[j]...
阅读全文
摘要:1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7 # define maxn 300010 8 using namespace std; 9 void ot(){coutmx) mx=dis[v],st=v; 35 q[tail++]...
阅读全文
摘要:这是一个二分图匹配+贪心+离散 首先,如果不考虑时间1e8的范围的话,直接将任务按照从大到小的顺序排序,然后直接最大匹配然后求和就行了 但是,这道题的时间轴很长,会炸内存 那么我们就将任务按照左端点排序,然后从小到大进行离散,然后用一个pos数组来记录离散后的i对应原来的左端点的真实值是多少 然后再
阅读全文

浙公网安备 33010602011771号