合集-CodeForces 比赛合集
摘要:下大分场/ll A 若 的值全部相同则无解,否则: 存在一个数出现了至少两次。那么让其中的恰好一次染上红色,其他的数全部染上蓝色。 不存在一个数出现了至少两次。那么随机选取一个数染上红色,其他的数全部染上蓝色。 时间复杂度为 。 #include <bits/stdc++
阅读全文
摘要:简单场.png A 若 则显然无解。否则因为 矩阵是一个 的排列,所以说只需要让其循环右移一位即可。 时间复杂度 。 #include <bits/stdc++.h> #define int long long
阅读全文
摘要:打的稀烂,但是还是上分了( A 考虑对值域做一个后缀和。若某一个后缀和的值是奇数那么先手就可以获胜。否则就不可以获胜。 (我才不会告诉你我这题吃了一次罚时的) #pragma GCC optimize(3) #include <bits/stdc++.h> #define int long long
阅读全文
摘要:上大分,赢! A 考虑将每一条对角线上可以存放的砝码数量都记录一下,从大到小排序,然后直接暴力贪心选择。 此时可以发现数量一定形如 这样的形式。直接暴力减即可。 时间复杂度为 。 #include <b
阅读全文
摘要:这场 Div. 3 难度高于平时。 A #include <bits/stdc++.h> #define int long long using namespace std; const int N = 500100; int a[N]; signed main() { int T; scanf("
阅读全文
摘要:打成乐子 A 容易证明下标为奇数的地方可以取到,下标为偶数的地方不可以取到。 直接模拟时间复杂度为 。 #include <bits/stdc++.h> #define int long long using namespace std; const int N = 1000100;
阅读全文
摘要:A 直接暴力枚举字符添加在哪里,以及添加的字符是什么即可。 #include<bits/stdc++.h> #define int long long using namespace std; const int N=500100; signed main(){ int T; cin>>T; whi
阅读全文
摘要:不会做 F1.不会做 F1.不会做 F1.不会做 F1.不会做 F1.不会做 F1.不会做 F1.不会做 F1.不会做 F1.不会做 F1.不会做 F1.不会做 F1.不会做 F1.不会做 F1.不会做 F1.不会做 F1.不会做 F1.不会做 F1.不会做 F1.不会做 F1.不会做 F1.不会做
阅读全文
摘要:难绷事实:B wa 一发 A ...... #include<bits/stdc++.h> #define pb push_back #define int long long using namespace std; const int N=500100; int a[N]; signed mai
阅读全文
摘要:A 容易发现答案为 。 #include<bits/stdc++.h> #define int long long #define pb push_back using namespace std; const int N=1000100; int a[N
阅读全文
摘要:打的还行 A 容易发现当且仅当 且 时才可能,否则一定不可能。 const int N=1000100; int a[N]; signed main(){ int T;cin>>T; while(T--){ int n;cin>>n; F(i,1,n)
阅读全文
摘要:dp round again A 发现构造若干个 然后接若干个 接若干个 接若干个 再接若干个 且让这些字母的出现次数尽量相等最优。直接构造时间复杂度为 。 void solve(unsigned __testid=1){
阅读全文
摘要:总结:赛时一题不会,赛后光速 AK A namespace Triple_Light { int a[N]; void run() { int T = read(); while (T--) { int n = read(); int buc[30] = {0}; for (int i = 1; i
阅读全文
摘要:A 答案显然就是 。 void run() { int T = read(); while (T--) { int a = read(), b = read(); cout << a / __gcd(a, b) * b << '\n'; } } B 考虑贪心模拟
阅读全文