Codeforces #640 div4 F~G (构造二连弹)】的更多相关文章

题意:求一个只由\(01\)组成的字符串,使得它所有长度为\(2\)的子串满足:每对子串的数字和为\(0,1,2\)的个数为\(a,b,c\). 题解:我们先考虑子串数字和为\(1\)的情况,构造出一个\(10\)的循环串,然后在它的头部尾部适当添加\(1\)和\(0\),使得a和c也满足即可.需要特判\(b=0\)的情况,并且\(b\)奇偶不同构造情况也不同. 代码: #include <iostream> #include <cstdio> #include <cstri…
Problem   Codeforces #541 (Div2) - F. Asya And Kittens Time Limit: 2000 mSec Problem Description Input The first line contains a single integer nn (2≤n≤150000) — the number of kittens. Each of the following n−1lines contains integers xi and yi (1≤xi,…
Educational Codeforces Round 40 F. Runner's Problem 题意: 给一个$ 3 * m \(的矩阵,问从\)(2,1)$ 出发 走到 \((2,m)\) 的方案数 \(mod 1e9 + 7\), 走的规则和限制如下: From the cell (i, j) you may advance to: (i - 1, j + 1) - only if i > 1, (i, j + 1), or (i + 1, j + 1) - only if i <…
Educational Codeforces Round 66 F 题意:长度为 n 的序列,求有多少个区间 \([l,r]\) ,使得其构成了一个 1~r-l+1 的排列. \(n \le 3*10^5, a_i \le n\) key:随机权值 合法区间中肯定包含 1 ,并且最大值就是长度.先考虑最大值在 1 的右边的情况,可以枚举每个 1 的右边,记录最大值 x ,此时需要检查 \([r-x+1,r]\) 这个区间是否是一个排列.最大值在 1 左边的情况同理. 考虑 hash :给 1~n…
链接:https://codeforces.com/contest/1154 A - Restoring Three Numbers - [水] #include<bits/stdc++.h> using namespace std; ]; int main() { cin>>a[]>>a[]>>a[]>>a[]; sort(a,a+); ;i<=;i++) printf(]-a[i]); } B - Make Them Equal - […
链接:https://codeforces.com/contest/659 A - Round House - [取模] AC代码: #include<bits/stdc++.h> using namespace std; int n,a,b; int main() { cin>>n>>a>>b; a=(a-+b); ) a+=n; a%=n; cout<<a+<<endl; } B - Qualifying Contest - [水…
gym 100952 A #include <iostream> #include<cstdio> #include<cmath> #include<cstring> #include<algorithm> #include<map> #include<queue> #include<stack> #include<vector> #include<set> using namespac…
gym101243 A #include<iostream> #include<cstdio> #include<cmath> #include<cstring> #include<algorithm> #include<map> #include<queue> #include<stack> #include<vector> #include<bitset> #include<s…
翻开以前打的 #583,水平不够场上只过了五题.最近来补一下题,来记录我sb的调试过程. 估计我这个水平现场也过不了,因为前面的题已经zz调了好久-- F:就是给你环上一些点,两两配对求距离最小值. 匹配边明显是不能交叉的啊.那就直接转一个环就好了. 考虑计算贡献,盲猜一个点的贡献方向改变不会特别多,观看题解以验证,证明一发,发现猜对了. 很明显,考虑 \(x \leq y\),那么固定 \(y\),一定有一个分界点,使得 \(y - x > m - x + y\). 开一个长度为 \(n\)…
链接:http://codeforces.com/contest/600 A题: 字符串处理. B题: sort+upper_bound C题: 统计一下每种字符的个数,然后贪心. (1) 如果没有奇数个的字母.直接按字典序放. (2) 如果有1个奇数个的字母.就把单出来的那一个字符(注意是一个字符,不是所有的那种字母)放中间,其他的按字典序放. (3) 如果多与1个奇数个的字母.就把单出来的每种字母的一个按字典序排好,最右边的替换成最左边的,次右边的替换成次左边的……最后情况会转变为(1)或者…