A. Ahahahahahahahaha 通过作者半个小时的观察:全零和全一必定有一个是符合要求的答案,因为0的个数和1的个数至少有一个大于等于\(\frac{n}{2}\). B. Big Vova 贪心. 将剩余可用的数字用一个集合装起来,然后从小到大枚举下标\(i\),每次枚举可用的数字,保存使前缀GCD最大的那个数字,这个数字就是\(b_i\). C. Chocolate Bunny 通过观察可得:一次? i j和一次? j i可以确定\(p_i\)和\(p_j\)中的较小值及其下标.…
A. Ahahahahahahahaha 题目:http://codeforces.com/contest/1407/problem/A 题解:最多进行n/2的操作次数,我们统计这n个数中1的个数,是否过半,如果没有代表0过半,因此输出剩余的0的个数即可 如果1的个数过半,则考虑1的个数是奇数还是偶数,若为奇数,则再减去一个输出:若为偶数个,则直接输出. 代码: #include<bits/stdc++.h> using namespace std; typedef long long ll;…
比赛链接:https://codeforces.com/contest/1438 A. Specific Tastes of Andre 题意 构造一个任意连续子数组元素之和为子数组长度倍数的数组. 题解 构造全为同一值的任意数组即可. 代码 #include <bits/stdc++.h> using namespace std; int main() { ios::sync_with_stdio(false); cin.tie(nullptr); int t; cin >> t…
比赛链接:https://codeforces.com/contest/1436 A. Reorder 题解 模拟一下这个二重循环发现每个位置数最终都只加了一次. 代码 #include <bits/stdc++.h> using namespace std; int main() { ios::sync_with_stdio(false); cin.tie(nullptr); int t; cin >> t; while (t--) { int n, m; cin >>…
比赛链接:https://codeforces.com/contest/1421 A. XORwice 题意 给出两个正整数 \(a.b\),计算 \((a \oplus x) + (b \oplus x)\) 的最小值. 题解 \[\begin{equation} a+b = a \oplus b + ((a\ \&\ b)<<1) \end{equation} \] \[\begin{equation} (a \oplus x) + (b \oplus x) = ((a \oplu…
比赛链接:https://codeforces.com/contest/1422 A. Fence 题意 给出三条边 $a,b,c$,构造第四条边使得四者可以围成一个四边形. 题解 $d = max(a,b,c)$,可以将四条边中最长的两条边想象成一把可以开合的尺子. 代码 #include <bits/stdc++.h> using namespace std; int main() { ios::sync_with_stdio(false); cin.tie(nullptr); int t…
比赛链接:https://codeforces.com/contest/1405 A. Permutation Forgery 题意 给出一个大小为 $n$ 的排列 $p$,定义 \begin{equation} F(p)=\mathrm{sort}([p_1+p_2,p_2+p_3,\ldots,p_{n-1}+p_n]) .\nonumber \end{equation} 试找出一个不同于 $p$ 的 $p'$ 满足 $F(p') = F(p)$ . 题解 反转 $p$ 即可. 代码 #in…
比赛链接:https://codeforces.com/contest/1546 A. AquaMoon and Two Arrays 题意 给出两个大小为 \(n\) 的数组 \(a, b\) ,每次可以选择 \(a\) 中的两个元素分别加一减一,计算将 \(a\) 变为 \(b\) 的操作次数和步骤. 题解 数据范围较小,直接模拟即可. 若数据范围较大,可用栈或队列分别存储 \(a_i \lt b_i\) 和 \(a_i \gt b_i\) 的数,这样每次查找的时间复杂度就降到了 \(O_{…
A. Combination Lock 拨密码..最少次数..密码最多有1000位. 用字符串存起来,然后每位大的减小的和小的+10减大的,再取较小值加起来就可以了... #include<stdio.h> #include<math.h> #include<string.h> #include<iostream> #include<algorithm> #include<map> #include<set> #inclu…
A. Visiting a Friend time limit per test 1 second memory limit per test 256 megabytes input standard input output standard output Pig is visiting a friend. Pig's house is located at point 0, and his friend's house is located at point m on an axis. Pi…