
Codeforces
文章平均质量分 85
TeJoy
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Educational Codeforces Round 151 (Rated for Div. 2)
有1必能构造,否则假如没有1,假如有2, 3必定能构造出大于等于2的所有数,否则只有2的话只能构造出偶数。思路:不难发现,x, y轴对答案的贡献是独立的,考虑其中一维,假如在同方向才能有贡献,分类讨论即可。棋盘上两个点同时从C出发到A, B, 都走最短路径,问最多重叠的格子数。, 那对于不互质的数要如何计算呢,不难发现假如不互质,设。中都是独立的,显然我们要让它不为子序列,贪心的考虑在。原函数图大体上是折线型的,不难想到答案最大的时候,的统计是唯一的,考虑枚举所有满足条件的。的整数,每个数可以拿多次,问。原创 2023-07-05 15:17:43 · 1131 阅读 · 1 评论 -
Codeforces Round 870 (Div. 2)题解(5/6)
这个模特的最大值,如果知道每个模特后面能跟谁,就相当于在一个dag上。的,我们可以通过dag图上转移使得一次转移第二维的所有位数,第二维。场演出每个模特有不同的rank, 要求选出模特的子集后重排列使得。, 满足偏序关系,所以排序后一定是dag图,那么我们考虑对每一个。个人,有人说谎,有人说真话,每个人都告诉你至少有。个人说谎,问是否矛盾,否则输出可能的说谎的人数。场演出的rank严格递增,且费用最大。即可,这个每个模特后面能跟谁也显然有个。个模特,每个模特一个费用,,问最大的x使得成回文。原创 2023-05-06 13:14:14 · 619 阅读 · 1 评论 -
[Educational Codeforces Round 141 (Rated for Div. 2)题解
Educational Codeforces Round 141 (Rated for Div. 2)A. Make it Beautiful题意重排数组判断是否能够不存在任何元素等于其前面的数之和题解全部相同则不行,否则排序后最小最大次小次大即可构造出#include<bits/stdc++.h>#define io ios::sync_with_stdio(false);cin.tie(0);using namespace std;int main() { int原创 2023-04-24 12:55:33 · 454 阅读 · 0 评论 -
codeforces Round 722(Div.2 A-E
codeforces Round 722(Div.2 A-EA.Eshag Loves Big Arrays题意:给一个数组,每次可以选一个子序列,将其中所有严格大于平均数的数删去,问最多能删几个数思路贪心,最后留下来的一定是最小的,所以答案是n-最小的数量,注意只有最小值不能删时间复杂度O(n)O(n)O(n)#include<bits/stdc++.h>using namespace std;int t,n,a[105];int main(){ cin>&g原创 2021-06-04 11:24:55 · 309 阅读 · 1 评论 -
cf1110D(线性DP好题)
cf1110D(线性DP好题)题意:给n张牌,要么(i,i,i)(i,i,i)(i,i,i)打出,要么三连环打出,问最多能打出的牌思路:首先很显然假如三连环数量超过2个,我们必定可以直接转为3个(i,i,i)(i,i,i)(i,i,i)的形式而不会更劣,所以三连环可以看作是用来补偿的一开始用dp[i]dp[i]dp[i]表示前iii种数所能打出的最大牌数,然后直接通过dp[i−3]dp[i-3]dp[i−3]转移,但是后来发现,这样的状态具备后效性,即之前的策略影响当前的选择。除此之外,我们发现d原创 2021-05-24 19:56:56 · 428 阅读 · 0 评论 -
Educational Codeforces Round 104 (Rated for Div. 2)
Educational Codeforces Round 104 (Rated for Div. 2)A.Arena签到题,对于每个人来说,只要他比任意一个大,就可以成功, O(n2)O(n^2)O(n2)暴力枚举#include<bits/stdc++.h>#define pb push_backusing namespace std;typedef long long ll;int t,n,a[105];int main(){ ios::sync_with_stdi原创 2021-02-18 12:20:57 · 232 阅读 · 0 评论 -
[Codeforces Round #699 (Div. 2)】A-E 题解
[Codeforces Round #699 (Div. 2)】题解这一场充分说明了正难则反这种思想的重要性A.题意:从(0,0)问是否通过删除序列到达(px,py)思路:直接看四个方向的范围能否括住就行了#include<bits/stdc++.h>using namespace std;typedef long long ll;const int maxn=1e5+5;int t,n;char s[maxn];map<char,int>mp;int ma原创 2021-02-06 20:54:29 · 310 阅读 · 0 评论 -
[Codeforces Round #698 (Div. 2)] A-F题解
[Codeforces Round #698 (Div. 2)] A-F题解A.Nezzar and Colorful Balls思路:贪心,等价求众数的次数#include<bits/stdc++.h>#define lson p<<1,l,mid#define rson p<<1|1,mid+1,r#define ls p<<1#define rs p<<1|1using namespace std;typedef long原创 2021-01-31 17:30:18 · 265 阅读 · 0 评论 -
Codeforces Round #689 (Div. 2 题解
好久没有打cf了,vp了下这场恢复下手感A题意:用abc构造指定长度最长回文子串思路:水题,随便构造都可以#include<bits/stdc++.h>using namespace std;typedef long long ll;char a[]={ 'c','b','a'};int main(){ int t,n,k; cin>>t; while(t--){ cin>>n>>k;原创 2021-01-04 23:28:32 · 220 阅读 · 0 评论 -
Codeforces Round #672 (Div. 2)
其实是一场相对比较傻逼的场,但因为自己更傻逼只出了3题,还得继续努力呀A.Cubes Sorting思路:冒泡排序的最坏次数就是n*(n-1)/2, 只要当单增或者单减才能取到,所以就是刚好完全单减的时候是不行的#include<bits/stdc++.h>using namespace std;typedef long long ll;const int maxn=5e4+5;int a[maxn];int main(){ int t; scanf("%d"原创 2020-09-26 15:02:06 · 208 阅读 · 0 评论 -
codeforces edu 66(Div.2 C D E
C.思路:尺取,首先x必定被包含,所以尺取枚举k+1长的区间,必定在中点,更新即可#include<bits/stdc++.h>using namespace std;typedef long long ll;const int N=2e5+5; int a[N];int main(){ int t;cin>>t; while(t--){ int n,k,ans; scanf("%d%d",&n,&k); int原创 2020-06-29 11:52:38 · 117 阅读 · 0 评论 -
Codeforces Round #646 (Div. 2) A-D E
A.Odd Selection题意:问n个数里面选x个数总和是否能组成奇数,任何偶数之和都是偶数,所以我们只需要让奇数的个数是奇数,奇数个数为cnt1,偶数cnt2,对于1,3,5,7…<=cnt1只要偶数能满足 cnt2>=(x-i)即可,注意一下只有奇数的情况要特判下#include<bits/stdc++.h>using namespace std;typedef long long ll;int main(){ int t,x,n; scanf("原创 2020-06-01 09:47:04 · 241 阅读 · 0 评论 -
Educational Codeforces Round 88 (Rated for Div. 2) A-E
A.Berland Poker题意:给你一些卡牌分配给一些人,求分配后的人中最大卡牌数-第二大的卡牌数的最大值题解:贪心,尽量全部给一个人,做不到的话多出来的平均分配给剩余的人,ceil printf要"%lf",不然会WA#include<iostream>#include<cstdio>#include<cmath> using namespace std;typedef long long ll;int main(){ int t;原创 2020-05-29 18:40:34 · 413 阅读 · 0 评论 -
Educational Codeforces Round 65 (Rated for Div. 2) A-F
A. Telephone Number题意:随便删看是否能找到开头为8且长度为11的串思路:贪心,从前面极限开删找到第一个8的位置后,算一下能否满足长度>=11,感觉我比赛的时候讨论复杂了,算了不管了#include<iostream>#include<cstdio>#include<cstring>#include<algorithm&...原创 2020-04-25 13:32:53 · 182 阅读 · 0 评论 -
Educational Codeforces Round 64 (Rated for Div. 2) A-F
A.Inscribed Figures题意:三个东西相切,求切点个数,可能为无限题解:分类讨论即可,注意一下 3 1 2 时候会出现重点#include <cstdio>#include <iostream>using namespace std;const int N = 110;int a[N];int main(){ int n; s...原创 2020-04-18 18:41:18 · 253 阅读 · 1 评论 -
codeforces edu 67 A-E
A Stickers and Toys思路:水题,保证取到就是在max(a,b)中然后减去两者都有的那部分-(a+b-n)再+1无论如何都可以满足#include<iostream>#include<cstdio>#include<cstring>#include<cmath>#include<algorithm>#incl...原创 2020-04-11 08:40:50 · 152 阅读 · 0 评论 -
codeforces edu72(div2.
A.Creating a Character水题一枚,设分给力量为x,解出x=(a+b-c)/2,然后就x<0,=0,(0,c),[c,无穷)讨论代码:#include<iostream>#include<cstdio>#include<queue>#include<cstring>#include<algorithm&g...原创 2020-03-14 16:54:34 · 147 阅读 · 0 评论 -
Codeforces Round #626 (Div. 2, based on Moscow Open Olympiad in Informatics)
这次这场比赛打的和屎一样,差点爆0…掉到1200分了,不说啥了,第一个问题是基础不扎实,第二个是审题不清A. Even Subset Sum Problem题意:给你一串数字,找出里面的一个子集,使子集和为偶数,先输出选取的个数,再输出选取的数字的下标,找不到则输出-1思路:一开始就卡住了…后来解出来没看到要输出个数,WA在样例1上4次…设偶数个数为x,奇数为y(2k+1)y+(2k)x...原创 2020-03-08 09:50:47 · 107 阅读 · 0 评论 -
Codeforces Round #620 (Div. 2) D. Shortest and Longest LIS
题意:就是给一个1~n的序列和序列中相邻两个元素间的大小关系,要求输出最短的LIS和最长的LIS的序列思路:其实就是贪心策略下的构造题,LIS尽可能长和尽可能短就是分别让越小的元素靠前和越大的元素靠前,所以可以构造1…n,n…1两个最优的答案,然后分别找寻连续的 >与连续的 <进行反转,这样的话也是尽可能用的是尽量靠前的元素满足题目的大小关系 保证最优 的最后得到的肯定是最优的 ...原创 2020-02-16 16:37:15 · 116 阅读 · 0 评论 -
Codeforces Round #619 (DIv.2) C Ayoub's function
Ayoub thinks that he is a very smart person, so he created a function f(s)f(s), where ss is a binary string (a string which contains only symbols “0” and “1”). The function f(s)f(s) is equal to the nu...原创 2020-02-14 17:59:49 · 208 阅读 · 0 评论 -
Codeforces Round #618 (Div. 2) C
题意:给一个数列,f(a1,a2,a3…an)=((a1|a2-a2)|a3)-a3…以此嵌套输出使f(x)最大的数列的排列顺序题解:很多大佬都是直接(a|b)-b=a&-b ,在下太菜所以不是这么做,观察可知 二进制下每一位独立运算 只有若1 0才可以得1,相当于若后面的数字位数出现了1,会使该位归0 由于要最大,只看第一个数字就好了 所以分别枚举各个数字的每一位,找寻从高位到低位...原创 2020-02-12 09:30:12 · 151 阅读 · 0 评论