education
Educational Codeforces Round 39 (Rated for Div. 2) -- D. Timetable (DP)
写得很折磨人,每次dp都写个一个多小时,写出来明明觉得不难 ^.^ 题目大意:可以进行K次操作,把删除1,进行k次操作后每行第一个 1 和最后一个 1 的位置 相减的绝对值加 1 得到的结果最小。 做法:每次肯定是要从左删或者从右边删,然后顺着这个思路,先把每行的进行小于等于k次操作时, 每行最小的 ......
Educational Codeforces Round 147 (Rated for Div. 2) A-D题解
A. Matching 题意:给出一个数,数中可能会有?,可以用0-9替换问号,问最后有多少种方法 Solution 对于位于首位的数可以用1-9替换,对于其他位置的额、可以用0-9替换,如果首位为0则无解 void solve() { string s;cin>>s; if(s[0]=='0') ......
Educational Codeforces Round 110 (Rated for Div. 2)
题目链接 C 核心思路 这个题目其实我们可以转换为把当前串转换为完美串有多少种方案呢,也就是我们从前往后一步一步往完美串去构造我们的方案。 这个思路非常巧妙,我刚开始的思路局限于算贡献去了。 完全就脱离了正确的思路。 集合定义 $f[i][0/1]表示的是处理了前i个位置,并且当前位置是0的方案数$ ......
Educational Codeforces Round 147 (Rated for Div. 2) A ~ C
A. Matching
题意:
给定一个字符串,将其中的 ‘?’ 替换成数字,不含前导0,如果字符串前导为0,输出0.。
分析:
每个地方有10种可能方案,在特判一下第一位就行了。 ......
Educational Codeforces Round 147 (Rated for Div. 2)
Educational Codeforces Round 147 (Rated for Div. 2) 链接 Educational Codeforces Round 147 (Rated for Div. 2) A题 如果第一位数是0,直接打印0 如果第一位数是'?',有9个数可以选择,如果其他位 ......
[Educational Codeforces Round 147 (Rated for Div. 2)](https://codeforc.es/contest/1821)题解A~D
A: 思路: 首字母如果是0,直接输出0。 如果首字母是?,提供九种方案,之后每一个?提供10种方案。 void solve(){ string s; cin>>s; if(s[0]=='0'){ cout<<"0"<<endl; return ; } int ans=1; for(int i=0; ......
练习记录-cf-Educational Codeforces Round 147 (A-D)
打的很烂的一场 C想了很久 D的贪心没有贪好 赛后一小时补起来了 谁是nc 我是nc! A. Matching 问有多少种情况能匹配 就计算?的个数 x10x10...... 如果第一个是? 那么就是9x10x10... 如果第一个是0 不能有前导0 就输出0 #include<bits/stdc+ ......
Educational Codeforces Round 132 (Rated for Div. 2)
题目链接 C 核心思路 这个题目有点经典,对于括号需要肯定第一个想法是想到栈。然后看有多少可以匹配。这里我们也照样采用栈的一个思考方式。 也就是使用$s1$来记录左括号减去右括号的数量,其实也就是已经匹配了的括号的数量。然后$s2$表示的是还不可以确定的问号的数量。 但是有一个边界:那就是)这样是不 ......
Educational Codeforces Round 89 (Rated for Div. 2)
题目链接 C 核心思路 我们需要保证任意一个点出发都需要回文,所以我们的斜对角先必须的一致,什么意思呢:看下这个样例把。 1 0 1 0 1 0 1 0 1 比如这种(2,1)和(1,2) 就必须要和(2,3)的和(3,2)的相等。 这个斜对角的点有一个规律就是横纵坐标加起来就是相等的。 比如其中一 ......
Educational Codeforces Round 113 (Rated for Div. 2)
题目链接 B 核心思路 这个题目我觉得很好。 首先分析下吧,如果有人需要执行操作二那么我们肯定就是给他们都打上平局是最优的。 那么如果有人需要执行操作一呢,那么我们就可以把这些需要执行操作1的都搞一起。然后是他们成一个环。这样肯定就保证了每个人都会赢上一次。 C 核心思路 这个题目的性质其实就是我们 ......
[Educational Codeforces Round 118 (Rated for Div. 2)]题解
A 题意: 给定两个数,每一个数有两个属性,第一个属性是p1,第二个属性是p2.表示这个数有p2个后缀0.这个数本身等于p1后面加p2个0.问给你两个这种数,判断大小。 思路: 赛场上想到的:如果最终的长度不一样,可以直接根据长度判断。 如果相等,就把后缀0加上直接比较大小就可以(比较字典序的大小) ......
Educational Codeforces Round 110 (Rated for Div. 2) C. Unstable String(状态机)
https://codeforces.com/contest/1535/problem/C 题目大意: 给定一个字符串s,由 1 0 ?组成:?每次都可以任意替换成0或者1 问我们这个子字符串中,能够组成010101这样两两互不相等的字符串的数量最大是多少? input 3 0?10 ??? ?10 ......
Educational Codeforces Round 120 (Rated for Div. 2)
题目链接 C 核心思路 这是一个很好的二分的题目,首先我们判断题目可不可二分,很显然是可以的把。因为假设我们x是可以的话,x+1...肯定也是可以的,但是x-1,x-2....这些又是不可以的。 好,接下来思考二分刚开始的左右边界,左边届很好想,关键是右边界。这个其实也不难。因为我们最坏肯定是全部都 ......
Educational Codeforces Round 146 (Rated for Div. 2)
Preface 补题ing 值得一提的时补这场的时候先是遇上了CF的12小时大维护,后面又遇到了评测机崩了测不了也是有点有意思的说 A. Coins 傻逼题,首先考虑$2|n$时一定有解$x=\frac{n}{2},y=0$,否则若$2\nmid n\and 2|k$则由裴蜀定理知此时一定无解 否则 ......
Codeforces Educational Codeforces Round 145 (Rated for Div. 2) C. Sum on Subarrays 题解
题意 Codeforces Educational Codeforces Round 145 (Rated for Div. 2) C. Sum on Subarrays 给你 $n$ 和 $k$ ,要求生成一个长度为 $n$ 的数组 $a$,且他的非空正子数组的数量为 $k$ ,非空负子数组的数量 ......
Educational Codeforces Round 131 (Rated for Div. 2)
题目连接 C 核心思路 这个题目乍一看是一个模拟题其实这是一个可以使用二分的题目,因为这其实只需要我们找到答案就好了。 那么二分怎么去check呢,我们可以计算出来每一位工人在x小时可以完成的任务量。 首先我们可以搞出来某一个工人擅长哪几种任务,对于这几种任务它可以一个小时就完成一个,而对于他不擅长 ......
Edu Round 板刷计划 4. Educational Codeforces Round 4 题解
Change Log: 2023.04.06 开坑. A - The Text Splitting 弱智题. 枚举分出来多少个长度为 $p$ 的串,则能计算出长度为 $q$ 的串有多少个,若合法则直接输出即可. 无解输出 -1. Sample submission. B - HDD is Outda ......
Educational Codeforces Round 146 (Rated for Div. 2)
A. Coins #include <bits/stdc++.h> using namespace std; #define int long long int read() { int x = 0, f = 1, ch = getchar(); while ((ch < '0' || ch > ' ......
Educational Codeforces Round 124 (Rated for Div. 2)
题目链接 C 核心思路 其实还是得根据样例,首先我们先自己分析出来。现根据边地数目来分析。 我们其实不难发现四个端点必须得连上边。 边数为2.那么只有两条竖线。方案数是一种 边数为3,那么就一条竖线还有就是一把叉这里交换位置就是两条了。还有就是平行四边形和一条斜线,也是可以交换位置的。这里就有四种。 ......
Educational Codeforces Round 90 (Rated for Div
Donut Shops 现在有两个超市,第一个超市的物品按件卖,每件商品的售价为$a$元;第二个超市的物品按箱卖,每箱有$b$件物品,每箱售价为$c$元,现在要让你买$x$和$y$件商品,使得在第一个超市买$x$件商品的总花费比在第二个超市买$x$件商品的总花费严格小,同理在第二个超市买$y$件商品 ......
Educational Codeforces Round 145 (Rated for Div. 2)
A. Garland 分类讨论 #include <bits/stdc++.h> using namespace std; void solve(){ string s; cin >> s; map<char,int> cnt; for( auto c : s ) cnt[c]++; if( cnt ......
Educational Codeforces Round 65 (Rated for Div
D - Bicolored RBS 给定一个括号序列,现在你必须对每一个括号涂成蓝色或红色,要求使得涂完后的红色括号和蓝色括号序列都必须是合法的括号序列,设红色括号形成的的括号序列的深度为$dep_1$,蓝色括号形成的括号序列的深度为$dep_2$,答案为$max(dep_1,dep_2)$,现在让 ......
Educational Codeforces Round 77 (Rated for Div2)
B - Obtain Two Zeroes 给定两个整数$a,b$,你可以执行以下操作任意次:每次操作选择一个正整数$x$,使得$a:=a-x,b:=b-2x$或者$a:=a-2x,b:=b-x$,问你是否能通过操作使得$a,b$都为同时为$0$ 题解:思维 假设$a<b$ 我们可以得到$a-x+b ......
Edu Round 板刷计划 3. Educational Codeforces Round 3 题解
Change Log: 2023.03.27 开坑. A - USB Flash Drives 弱智题. 将 $a_i$ 从大到小排序,然后枚举贪心地取即可. 时间复杂度 $O(n\log n)$. 随便过. Sample submission. ......
AtCoder Educational DP Contest
1.A 没什么难度,直接算就可以了。 点击查看代码 #include<bits/stdc++.h> #define int long long #define Yes printf("Yes\n") #define No printf("No\n") #define YES printf("YES\ ......
Educational Codeforces Round 145 (Rated for Div. 2) A-D题解
比赛地址 A. Garland 1 void solve() 2 { 3 for(int i=1;i<=4;i++) 4 { 5 b[i]=a[i]=0; 6 } 7 int cnt=0; 8 string t;cin>>t; 9 set<int>st; 10 for(int i=0;i<4;i++ ......
Educational Codeforces Round 145 (Rated for Div. 2) - 题解
https://codeforces.com/contest/1809/problems A. Garland 只需要枚举颜色种类数即可。如果颜色为 $2$ 还要枚举一下颜色分布,形如 aabb 的答案为 $4$,形如 abbb 的答案为 $6$,如果形如 aaaa 无解,否则答案均为 $4$。 # ......
Educational Codeforces Round 116 (Rated for Div. 2)
题目链接 A 核心思路 这个题目相当的玄学,所以如果遇到实在不会的题目。那么直接从样例入手吧,我们可以从样例发现每次改的都是开头或者最后的一个。于是大胆的猜测啊。会不会只要改动开头或者是结尾的呢。 结论:如果开头和结尾相同就不需要改,如果需要就要改。 数学归纳法: n=3,aba这种情况显然成立。 ......
Edu Round 板刷计划 2. Educational Codeforces Round 2 题解
Change Log: 2023.03.22 开坑. A - Extract Numbers ......
Edu Round 板刷计划 1. Educational Codeforces Round 1 题解
Change Log: 2023.03.21 开坑. A - Tricky Sum 简单题. 注意到 $n$ 以内 $2$ 的幂次只有 $O(\log n)$ 个,因此只要先算出 $1$ ~ $n$ 里所有数的和再减去 $2$ 的幂次的和的 $2$ 倍即可. 时间复杂度 $O(t\log n)$. ......