随笔分类 - 刷题
摘要:1004 Vacation 说是大模拟,其实应该还是算一个思维题,想到了就可以比较简单的写出来,不然就是像我一样写两个半小时出来疯狂wa,还是太菜了QAQ 第一种解法: 二分时间,感觉这种解法对这类题目应该都可以,只要数据稍微友好一点,不要精度不够,double因该是不会爆掉的,他的数据范围很大 b
阅读全文
摘要:v> A 应为数据范围很小可以直接暴力判断 C 规律也想到了,但是想歪了一个点,就是如果当前数量比较小的话,那么之前比他数量大的应该全部都 加进来,而不是只加一部分。 注意初始化 D 想到了一个规律,但是无意识的忽略了题目应该是如果尺寸满足就全部应该是发体恤的,不能只发一部 分 E 博弈论SG函数又
阅读全文
摘要:v> A 签到题 B 其实一个贪心就过了,只有前面比后面快才能讲水一处到下一个也就是说会加速后面灌水,但是如果前 面比后面慢反而会托慢后面的速度,所以最后一个何时满处取决于包括最后一个在内的最慢的那一个时 间。何时所有水池都灌满取决于从前往后遍历的最慢的那一块,如果后一个比前一个慢则但钱的则为正 确
阅读全文
摘要:v> 丢失的数字 签到题,WA1发,数组名字还是要根据所存的数据的意义取名字,最好不要取a,aa这样的数组容易混淆 同学聚会 注意题意的理解,避免在书写过程中出现重构的现象 最大岛屿 数组范围一开始就要写对 下大雪了 强连通分量模板题 上课点名 vector 的insert复杂度理论上是O(n) ,
阅读全文
摘要:v> 4969 A &符号,一般取决于1个数稍等那一个,画出n^2图,找一下瑰丽就可以知道了 B 全部写出来即可找到规律,T了的话,可以剪枝,把小的那一些直接输出,不计算 C 排序,把一样的放在一起,也可认为是排序,和排序,位置有关的只要是复杂度允许都可以想到逆序对 问题。逆序对原本就是顺序逆过来的
阅读全文
摘要:v> wxy 3.20 牛客练习赛55重现 4954 A 签到题 B 大胆猜测小心验证,一定要从反面验证 C 如果是定义题的话,一定要从定义出发,不能想当然 除和取模:要先除才能取模,不能先取模再除 E 式子可以拆开分解,lca的定义再次加深理解,如果i,j的lca是x的话,那么i,j分别来自x的不
阅读全文
摘要:v> A 签到题 考虑全面,是否需要和0进行比较 G 思维题 aa bb 这样的直接交换第一个a和第二个b就可以了 ab ba那么先通过一次交换把他变成上面哪一种情况,再交换即可 F 还是写的太慢了,卡了好久。。。其实有更简便的方法的 就是计算前面有多少是可以到该点是符合要求的,每遇到一次0就更新一
阅读全文
摘要:v> 5057 B 对于树状数组的理解,add不仅仅是加,可以为减,就是如果一个区间内莫格数不要的话,可以在相应 的位置上add原来的负数 求区间的和,如果一个数在该区间上出现多次,那么只加一次 # include <bits/stdc++.h> using namespace std; typed
阅读全文
摘要:v> 5062 C 赛时解法 直接线性规划啊,2 * a+4 * b<=x和 3*a+b<=y 相加就是 ( a+b ) <=(x+y)/5 x->x-x%2,应为a,b一定是正 整数,所以考虑交点不在第一象限的情况, b或者a/2 # include <bits/stdc++.h> using n
阅读全文
摘要:v> wxy 4.12 牛客练习赛61 重现 5317 A 签到题 对于特殊情况的判断条件要考虑全面,且如果有除的情况的话要考虑是否有浮点储物的可能。 签到题如果wa了的话,不要太care,不要影响心情。 B 猜中结论顺利A题,这种题一般就是快速找到结论,然后小心求证是否需要分类讨论,赛后再去求证结
阅读全文
摘要:v> wxy 3.31 牛客练习赛60重现 5075 A 看到位运算,可以往二进制方面去想,可以把1-n所有的的每位放到相应的位置上,然后遍历所有的 数,每次都把他拆分成二进制和刚刚统计的那些数的每位进行与运算 C DP 设dp[ i ] [ j ]表示前i个,长度为j的本质不同的子序列有多少,那么
阅读全文
摘要:v> wxy 4.2 # 13 A 签到 B 先写了B,但是因为考虑不全面,WA了。。三发,然后自闭了然后去写C,C是一个思维题,可能由受 到B的影响,然后一直想不出来,。。,比赛就卡在这个地方,卡了将近一个小时。。。 B卡的地方就是,的确是要按照增价来排序,但是还要考虑原价,就是每单位原价所造成的
阅读全文
摘要:v> wxy 4.5 牛客练习赛51重现 5163 A 题目中的子串和现实中的子串也许定义不一样,要注意区分按照题目来。 题解解法:做一个前缀和一个后缀,前缀和sum1[i ]记录位置1...i中a的个数,后缀和sum2[i ]记录i...n 中c的个数。从前往后枚举字符串的所有位置,如果当前位置i
阅读全文
摘要:v> wxy 4.9 牛客训练赛50重现 5220 A 给一个字符串,如果相同的字母都连在一起,那么就是令人心情愉悦。如果前面和现在是同一个字母, 那么就更新该字母的位置,如果前面不是该字母但是该字母的,f数组之前更新过,那么就说明这个字母 不只一段。 题解从总长度入手。 B 模拟hash散列表的操
阅读全文
摘要:v> wxy 4.14 #15 [Cloned] 活生生把ACM赛制打成OI赛制的一场,就交了签到题然后就一直in queue还好都一发A了,刺激。 A 写得有点慢了,刚开始对应关系弄反了,采用模块化的设计思想,直接先解决对应关系搞一个数组就可 以了。然后看转换后的字符串是否所有的字母都是存在的即可
阅读全文
摘要:大意就是每次给一个矩形就会覆盖之前的矩形的部分,且保证(x [ i ] <= x [ j ] y [ i ] <= y [ j ] )不同时出现,那么就是用一个set存一下x和y,逆序,对于每次的x或者y,如果是比当前最小的还要小,那么就是直接加上这个数,否则就是找当前set里面比他小的离他最近的那
阅读全文
摘要:v> wxy 3.10 牛客练习赛56 重现 4841 B 考虑一条边,从左边过去和从右边过来经过的分别为两个子树的大小和人数乘积的和的两倍,想到有点 类似于换根DP和树形DP,但是LL要和lld相匹配要注意。 C 朴素做法是n^2*k的,考虑到转移的时候是前缀和,前缀和==区间和,想到树状数组,f
阅读全文
摘要:v> wxy 3.3 牛客练习赛58重现 4756 C 没有办法都枚举的话,就枚举一维剩下一维可以凑,考虑用二进制枚举取哪些行,然后用剩下的列数中 的最大的前几个凑足k。复杂度最差2^15 * 15* 15。 D 棋盘DP【DP真是思维的体操啊,一看就会,一做就废,QAQ】 如果右边没有障碍,那么就
阅读全文
摘要:v> wxy 2.27 #8 A 给出一些字母模拟加法,要求相同字母用相同数字代替,不同字母用不同数字代替,开头的字母不能用 0代替。 应为题目保证最多只有是个不同的字母,dfs搜索每个字母应该匹配什么数字,复杂度为10! =3628800,然后对于所匹配好的字母和数字进行check看是否满足式子,
阅读全文
摘要:v> wxy 2.24 #7 NCPC2012 一开始先看了B了,花了一个小时心态也炸了,。。。, H 心态炸了之后就不太稳了,就是一个bfs和一个逻辑上的思维 只要按照bfs遍历,然后搞清楚,只有之前没有遍历到的才要修改值,否者再修改会变大。再有可以再 inf的基础上+1,对后面结果没有映像,因为
阅读全文