摘要:
C. Wavy Tree 发现修改次数和相邻两数的相对大小有关,所以可先求出差分数组。 分两种情况考虑:① 奇数位置为波峰 ② 偶数位置为波峰。 以情况 ① 为例,若奇数位置差分后值小于等于0则不合法,需要修改至1;若偶数位置差分后值大于等于0则不合法,需要修改至-1。 情况 ② 同理。 #incl 阅读全文
摘要:
D. Mi Re Do Si La? So Fa! [NOI2016] 优秀的拆分 原题。 枚举周期 $k$, 并将位置为 $k$ 的倍数的点设为关键点。枚举相邻两个点 $i,i+k$,并求出 $lcp(S[i...n],S[i+k...n])$ 和 $lcs(S[1...i],S[1...i+k] 阅读全文
摘要:
A. Car Show 双指针+桶统计每辆车出现的次数,直接计算即可。 #include<bits/stdc++.h> #define int long long #pragma GCC optimize(2) using namespace std; const int MAXN = 2e5 + 阅读全文
摘要:
D. Poker Game: Decision 对抗搜索+模拟比较两副牌的大小,具体看代码。 #pragma GCC optimize(2) #include<bits/stdc++.h> #define pii pair<int, int> #define fi first #define se 阅读全文
摘要:
C. Constructive Problems Never Die 对于出现次数大于1的数字,用出现次数为0的数字填充。 剩下的数字一定两两互不相同,对这些数循环移位,最后进行判断即可。 #include<bits/stdc++.h> #define pii pair<int, int> #def 阅读全文