摘要:
A 被这题卡住了,没写出来,想着类似AC自动机了,发现讨论一堆还可能有错。实质上就是每个位置枚举即可。 #include<bits/stdc++.h> using namespace std; typedef long long ll; const string str="abacaba"; int 阅读全文
摘要:
本来打算写垫底记的,结果Unrated了,所以是题解了。 AB 太水了不写了 C 看到unrated就没写了,其实挺简单的。 容易发现答案只可能是0/1/2,情况如下: 0:无错误序列 1:错误序列均连续 2:其他情况(可以将其变为错误序列连续) #include<bits/stdc++.h> us 阅读全文
摘要:
退役一周年祭 A 没看清是任意顺序耽误了几分钟,首先最大值应该>=2个,若是3个则都为最大值,否则就两个次大值一个最大值 #include<bits/stdc++.h> using namespace std; int T,a[3]; int main() { cin>>T; while(T--) 阅读全文
摘要:
ABC 签到,过水已隐藏 D 做完第一次操作后数字只有2e5,位数很小,可以直接模拟了 #include<bits/stdc++.h> using namespace std; const int N=2e5+7; int n,n1,s1,s2,a[N],pw1[N],pw2[N]; char ch 阅读全文
摘要:
虽然CSP没过初赛没参加,但我还是想写一下题解 D1T1格雷码 按位考虑答案,第i位即为k xor [k/2]的第i位 #include<bits/stdc++.h> using namespace std; unsigned long long n,k; int main() { cin>>n>> 阅读全文
摘要:
被jump送退役了,很生气。 不过切了这题也进不了队,行吧。 退役后写了一下,看到二维平面应该就是KD树,然后可以在KD树上做最短路,然后建立堆和KDTree。然后每次更新则是直接把最短路上的节点删掉,然后合并KDTree #include<bits/stdc++.h> using namespac 阅读全文
摘要:
小升初刚起步 初一 第一次比赛,NOIP PJ组215分,踩线1=,全省rk86,全国rk677(毕竟AH PJ当时是全国前三的) 省选只能去初中组,240分(满分400),全省11 初二 NOIP冒死报提高,啥都不会,结果壮胆打了个340分,再次踩线1=,全省rk58,全国rk1003(感觉初二这 阅读全文
摘要:
Day0 时光荏苒,日月如梭。人生中第二次也是最后一次全国赛开始了。 坐6h高铁+1h大巴来到gzez,热死。室友是A类的Gloid和C类的仓鼠,我寝室是为数不多(或许只有1个)的凑齐了ABC三种类别的寝室,显然是我这个B类菜鸡最菜了。 一年过去了,从雅礼洋湖到广州二中,真快啊,从高一到高二,这应该 阅读全文
摘要:
这题很有思维难度,乍一看基本无从下手。 给每个蔬菜钦定退役的时间显然很困难,可以考虑让时光倒流,从后向前递推,然后就变成了某个时间点有一部分蔬菜服役,而已经服役的蔬菜不会退役了。然后就可以直接考虑贪心,每种第一个出现的蔬菜,显然可以单独考虑,加上s[i],然后把蔬菜放到堆里面,就可以在O(pmlog 阅读全文
摘要:
暴力的做法应该是这样的,维护大小为k的堆,每次插入两点间距离并弹出堆顶。 然后这个做法显然是可以KD-Tree优化的,建立KD-Tree,然后如果该平面内最远点小于堆顶,则直接退出。就当做是复习很久没做的KD-Tree了。 不过有一个细节要注意,求最远点对,(1,2)->(2,1)算一对,所以堆的大 阅读全文