![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
codeforces
这是我写的关于codeforces上面一些题目的题解。
极地星辰
这个作者很懒,什么都没留下…
展开
-
Codeforces Round 893 (Div. 2) E1. Rollbacks (Easy Version)
总结:终于把这个E题过了,虽然比赛时没过,但也算差点top200呀2333记录一下赛后一小时内自主补E题,说明前面的题还是做得不够快呀2333。思路:单点更新+离线莫队区间查询区间不同数字个数+栈保留last_state。原创 2023-08-16 01:32:54 · 213 阅读 · 0 评论 -
Codeforces Round 892 (Div. 2) C. Another Permutation Problem 纯数学方法 思维题
【代码】Codeforces Round 892 (Div. 2) C. Another Permutation Problem 纯数学方法 思维题。原创 2023-08-13 01:04:46 · 561 阅读 · 0 评论 -
Codeforces Round 890 (Div. 2) supported by Constructor Institute C. To Become Max
【代码】【无标题】原创 2023-08-06 09:20:14 · 155 阅读 · 0 评论 -
Codeforces Round #785 (Div. 2) C. Palindrome Basis
C. Palindrome Basis题干略AC代码:#include <iostream>#include <algorithm>#include <string>#include <cstring>#include <set>#include <map>#include <queue>#include <stack>#include <cstdio>#include <原创 2022-05-01 01:32:46 · 201 阅读 · 0 评论 -
Codeforces Round #697 (Div. 3) F题 Unusual Matrix 和 G题 Strange Beauty
F题:此题考查位运算,同样是一道思维题。//Dlove's template#include <iostream>#include <algorithm>#include <string>#include <cstdio>#include <cmath>#include <cstdlib>#include <cstring>#include <ctime>#include <map&g原创 2021-01-26 22:57:10 · 125 阅读 · 0 评论 -
Codeforces Round #697 (Div. 3) D题 Cleaning the Phone 和 E题 Advertising Agency
D题考察的是贪心,注意用快读,用cin超时。//Dlove's template#include <iostream>#include <algorithm>#include <string>#include <cstdio>#include <cmath>#include <cstdlib>#include <cstring>#include <ctime>#include <map&原创 2021-01-26 20:46:17 · 137 阅读 · 0 评论 -
Educational Codeforces Round 102 (Rated for Div. 2) D题 Program
这题就是把加号抽象成1,减号抽象成-1,记做数组a(1~n标号),然后求出数组a的前缀和数组为s。(s[0] = 0)然后对于区间[l,r],答案就是然后分别在前缀和数组s上对区间[0,l-1],[r+1,n]查询最小值,最大值,分别记为minl1,maxl1,minl2,maxl2。那么此时的答案就是 max(maxl1,maxl2)-min(minl1,minl2)+1。AC源码如下://Dlove's template#include <iostream>#include <原创 2021-01-15 01:12:02 · 614 阅读 · 0 评论 -
Codeforces Round #665 (Div. 2) D. Maximum Distributed Tree
考点:图论,数论。#include <iostream>#include <algorithm>#include <cstring>#include <vector>using namespace std;const int maxn = 100010;const long long mod = 1e9+7;long long p[maxn];vector<long long> v[maxn];long long vis[max原创 2020-08-22 00:43:40 · 275 阅读 · 0 评论 -
Codeforces Round #664 (Div. 2) C. Boboniu and Bit Operations(非DP方法)
我当时看得时候就觉得是DP,然而,我DP的水平和数学水平差远了。如果用DP做,肯定AC不了。所以果断决定,思考DP以外的方法。然后我通过数学知识:a&b <= min(a,b); a|b >= max(a,b)把&看成1的交集, | 看成1的并集。也可画文氏图参考。然后我就把这道DP题转化为思维题,构造出每个c[i]的值可见数学力量的强大。 #include <iostream> #include <algorithm> us原创 2020-08-13 09:25:38 · 191 阅读 · 0 评论 -
Codeforces Round #663 (Div. 2) C - Cyclic Permutations
Codeforces Round #663 (Div. 2) C - Cyclic Permutations题目链接:https://codeforces.com/contest/1391/problem/C满足条件的排列数等于总排列数-不满足条件的排列数。而不满足条件的排列数通过找规律:如n = 4时:不满足条件的排列有:1234432124311342342114322341一共八个,但可以分为4组。一位第1,2,第3,4,第5,6,第7,8个排列,分别是reverse的。那么原创 2020-08-10 10:46:42 · 186 阅读 · 0 评论 -
Codeforces Round #652 (Div. 2) D题
原题链接:https://codeforces.com/contest/1369/problem/D思路:树形DP源码:#include <iostream>#include <algorithm>using namespace std;const int mod = 1e9+7;const int maxn = 2000010;long long dp[maxn][2] = {0};void init(){ for(long long i = 3;i<m原创 2020-06-24 00:58:59 · 1198 阅读 · 0 评论 -
Codeforces Round #658 (Div. 2) C题
C1暴力可过#include <iostream>#include <algorithm>#include <string>using namespace std;const int maxn = 200010;int a[maxn];int main(){ int t; cin >> t; while(t--){ int n; cin >> n; string s1,s2; cin >> s1原创 2020-07-22 09:02:50 · 174 阅读 · 0 评论 -
Codeforces Round #657 (Div. 2) A - Acacius and String
这题就是暴力。暴力一定要有耐心,绝对不能慌。暴力不出来,换个方法暴力,还暴力不出来,说明基础不劳2333源码:#include <iostream>#include <algorithm>#include <string>using namespace std;string ss = "abacaba";int main(){ int t; cin >> t; while(t--){ int m; cin >> m;原创 2020-07-19 20:59:29 · 236 阅读 · 0 评论 -
Codeforces Round #657 (Div. 2) B题 Dubious Cyrpto
m是被除数,a是除数,n的商,b-c是余数。切记,考虑b-c是负数的情况。切记 !切记 !二话不说上代码:#include <iostream>#include <algorithm>using namespace std;int main(){ int t; cin >> t; while(t--){ long long l,r,m; cin >> l >> r >> m; long long a = l原创 2020-07-19 20:32:52 · 361 阅读 · 0 评论 -
Codeforces Global Round 9 - E - Inversion SwapSort
求逆序数,并利用STL的multimap快速进行数据处理。本题就是一个观察样例找规律题。我们只需要用合适的方式把这种规律描述出来即可。规律为:m的个数即为原序列逆序数对个数。然后将这些逆序数按照cmp顺序输出。cmp:若逆序对下标的pair为(i, j),则在原序列a中,a[i]小的优先输出,若a[i]相同,则比较 j ,j 大者先输出。即 :const int maxn = 1010;int a[maxn];typedef pair<int,int> P;bool cmp(P原创 2020-07-05 10:34:54 · 571 阅读 · 0 评论 -
Codeforces Global Round 9 D Replace by MEX
一定注意数组范围,不然会被Hack。a,s数组可以只开1010。而数组b一定是要开2010,开1010是不够的,会被Hack。我这方便起见,全部开为2010。这就一个找规律的题。先找规律,再随机分配。#include <iostream>#include <algorithm>#include <cstring>using namespace std;const int maxn = 2010;int a[maxn];int b[maxn];int s原创 2020-07-05 08:16:29 · 111 阅读 · 0 评论 -
Codeforces Round #654 (Div.2)E1 Asterism
#include <iostream>#include <algorithm>#include <vector>using namespace std;const int maxn = 100010;long long a[maxn];vector<long long> v;long long n,p;long long f(long long x){ long long ans = 1; long long r = n; for(lo原创 2020-07-02 14:54:34 · 215 阅读 · 0 评论