巧妙暴力
二分抄代码
去了18ec没资格去19ec的反向训练选手
展开
-
E Enigmatic Partition 2020牛客暑期多校训练营(第八场)
https://ac.nowcoder.com/acm/contest/5673/E设我们要算出f[1-n],那么枚举a,a+1,a+2的个数,要满足x*a+(a+1)*y+(a+2)*z=1-n的数量提取一下,(x+y+z)*a+y+2*z=1-n的数量,其中a,x,y,z>=1那我们先求出a<=sqrt(n)的所有情况,然后去枚举i,得到a<=r下,f[1-n]的增加的值,这里是nsqrt(n)的复杂度然后我们就只要去算sqrt(n)<a<=n时,f[1-n原创 2020-08-03 17:02:02 · 1033 阅读 · 0 评论 -
codeforces1373E Sum of Digits
https://codeforces.com/problemset/problem/1373/E其实这题挺水的,然而看见F好像更可做一些,就去WA F一直到结束了。。。看了jly的代码。。清晰易懂思路简单。。。这题关键的问题在于那种末尾好多个9,然后进位,就一片0,于是并不知道这样如何构造其实就可以直接枚举末尾有多少个9就行了,枚举完以后,我们算出这d个9和末尾上的数字c,在k+1个数字中会产生多少贡献,然后再看剩下还要凑多少值,如果<=8,那么就是这个数+d个9+末尾c就行了,如果&原创 2020-06-26 12:25:23 · 438 阅读 · 0 评论 -
codeforces1216C White Sheet
http://codeforces.com/contest/1216/problem/C多校做过类似的题,当时队友直接离散化然后dfs过了。于是这题也直接离散化for循环覆盖就行了注意由于露在外面的可能不是整点,所以所有坐标要*2,再去吧x+1,x,x-1,y+1,y,y-1丢进离散化数组#include<bits/stdc++.h>#define maxl 300...原创 2019-09-21 17:53:52 · 297 阅读 · 0 评论 -
Gym 101955G Best ACMer Solves the Hardest Problem
http://codeforces.com/gym/101955/problem/G这题的关键在于k<=1e7于是只需要枚举所有x^2+y^2<=1e7,然后k=x^2+y^2这里地方就多一种方案最后发现所有数字中最多的拆分方案只有24种那么直接m*kk[k].size()暴力做就行了。用tim[x][y]作时间戳,记录这个位置保存的值是否是当前第cas组数据中的值...原创 2019-09-21 17:21:47 · 518 阅读 · 0 评论 -
codeforces1208E Let Them Slide
http://codeforces.com/problemset/problem/1208/E今天我终于认识到把多个区间的问题变成一个区间用打标记去线段树处理是不可行的,上次写偶像的树链合并也是想用这种方法,结果也8太行。看了题解,这题有更简单的做法。我们对每一行开一个multiset,然后按列从左枚举到右,multiset[i]维护第i行在当前列中有哪些数字是可以放的,那么我们取最大的那...原创 2019-09-06 11:02:31 · 325 阅读 · 0 评论 -
codeforces 1213D2 Equalizing by Division (hard version)
https://codeforces.com/problemset/problem/1213/D2这题看了没撒想法,然后依次写完了GEF,(F写错了个sb错误QAQ),回头来看才想出来,应该是本场最难题。这题关键在于考虑一个数字/2,那么他经过操作能变成的数字只有log个。于是我们可以枚举这k个数字的大小i,从1到2e5,然后能变成i的数字中找k个最小的代价出来求和,那么ans就是所有...原创 2019-08-31 01:08:37 · 494 阅读 · 0 评论 -
2019牛客多校第二场 D Kth Minimum Clique
暴力bfs,搞个优先队列每次取出当前的最小值的团,bitset维护当前团有哪些点,那么要新增一个点的时候,要保证新增点与在当前团中所有点都有两边,直接bitset & 一下判断复杂度大概是 k*O(bitset<100>)*log(堆大小)。由于bitset是常数级别的所以klog(堆大小)在新增点的时候要保证新增的点的序号在当前团的最后一个点之后,这样才能保...原创 2019-07-23 17:05:11 · 218 阅读 · 0 评论 -
cf 1154G Minimum Possible LCM
...这题关键在他的a[i]<=1e7那么我们知道lcm(a,b)=a*b/gcd(a,b);那么我们只要枚举每一个因数d,不管他是不是gcd然后找出能被这个d整除的最小的两个数字a,b那么对于这个因数d,tmp=a*b/d,ans=min(ans,tmp)由于我们枚举了1-1e7所有的质因子,所以就算a*b/d不是lcm,但之后总会枚举到a*b/gcd(a,b)而使...原创 2019-04-24 16:19:11 · 243 阅读 · 0 评论 -
cf1117E 构造,巧妙模拟
模拟题。。。当时没做好亏啊我们把输入询问的3个串看做a,b,c,把返回结果看成rea,reb,rec对于一个位置i,a[i],b[i],c[i]这个三元组就表示这个位置上一个独立的元素只有26个字母,那么26*26*26>1e4,所以只要看a[i],b[i],c[i] -> rea[j],reb[j],rec[j]就行了也就是应用的变换为 从 i 到 j,那么用t 求...原创 2019-02-20 22:12:46 · 175 阅读 · 0 评论 -
ccpc2016杭州D题HDU5936
一开始以为是个搜索题,还推出了很强的减枝。。然并卵,T=100教我做人没想到是个折半后hash,挺神奇的,根据规律和感觉y大概最多10位数,因为当y很大的时候,每多1位数最多加上9^9,而整个y要*10,所以y一大了x就很容易小于0,而此题x>0,x<10^9,于是猜想y最多10位数。于是先把前5位数(可以是0)的结果保存起来,再用后5位数去搜。用mapT掉了,于是换成了uno...原创 2017-11-02 21:08:55 · 330 阅读 · 0 评论 -
codeforces 1108E2 巧妙暴力
震惊!某蒻校ACM集训队队长打cf div3 做了5道水题,2题WA到自闭, 菜哭.jpg在E1中,我们直接对n个数字进行枚举,枚举哪个数字为最大值,哪个数字为最小值,那么-1的区间中,只有那些包含最小值不包含最大值位置的区间是有效了,n^2*mE2中n到了2e5,但m还是300,这时我就冇得思路了,还是太菜了,看了别人代码,其实和E1一样,因为m个区间最多吧1-n分成2m段,那么m个区间...原创 2019-01-24 10:16:55 · 383 阅读 · 0 评论