![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
codeforces刷题笔记
爱一袭铁路
这个作者很懒,什么都没留下…
展开
-
Codeforces 1490.C. Sum of Cubes
我们可以直接把1到10000之间的3次方都打表,然后遍历1到10000#include<iostream>#include<cmath>#include<cstring>#include<cmath>#include<algorithm>#include<stack>#include<queue>#include<map>const int maxn = 15e4 + 10;using na原创 2021-05-31 23:17:06 · 118 阅读 · 0 评论 -
Codeforces 1527.A. And Then There Were K
这道题的意思是找到比n小的最大k#include<iostream>#include<cmath>#include<cstring>#include<cmath>#include<algorithm>#include<stack>#include<queue>#include<map>const int maxn = 1e5 + 10;using namespace std;typedef原创 2021-05-30 14:49:09 · 216 阅读 · 0 评论 -
Codeforces 1521.A. Nastia and Nearly Good Numbers
好数我们可以直接使用A*B,次好数我们可以用A,然后输出它们的和就可以了#include<iostream>#include<cmath>#include<cstring>#include<cmath>#include<algorithm>#include<stack>#include<queue>#include<map>const int maxn = 2e5 + 10;using na原创 2021-05-30 13:36:33 · 108 阅读 · 0 评论 -
Codeforces.1526.B. I Hate 1111
这道题中,1111 及以上的是可以被11或111整除 的因此,我们可以使用11尝试整除x,如果不行,那么就让x减去111,10次以内可以得出结果#include<iostream>#include<cmath>#include<cstring>#include<cmath>#include<algorithm>#include<stack>#include<queue>#include<map>原创 2021-05-29 10:30:26 · 231 阅读 · 0 评论 -
Codeforces.1526.A. Mean Inequality
如果把整个数组分成左右两个子数组,左数组的最大值小于右数组的最小值,交替输出,那么答案可以成立#include<iostream>#include<cmath>#include<cstring>#include<cmath>#include<algorithm>#include<stack>#include<queue>#include<map>const int maxn = 2e5 + 1原创 2021-05-29 10:10:35 · 113 阅读 · 0 评论 -
Codeforces.1430.C. Numbers on Whiteboard
根据题意,只需要取最大的两个数字,使他们相加减半,就可以得到答案如果n=2,那么答案是2如果n大于等于2,那么答案也是2,不过答案的格式不等于n=2的情况由此写出以下代码:#include<iostream>#include<cmath>#include<cstring>#include<cmath>#include<algorithm>#include<stack>#include<queue>#in原创 2021-05-28 19:52:10 · 65 阅读 · 0 评论 -
Codeforces.1506.B. Partial Replacement
题目的意思是让我们去找在K范围内的能够变成X的*数量我们可以用两个指针标记头和尾的位置,然后对其用贪心算法进行求解#include<iostream>#include<cmath>#include<cstring>#include<cmath>#include<algorithm>#include<stack>#include<queue>#include<map>const int max原创 2021-05-28 11:17:15 · 109 阅读 · 0 评论 -
Codeforces1509.B. TMT Document
根据题意,对于每个数组中的M,如果它左侧的T大于等于且右侧的T大于等于,并且,T的数量应该是M数量的两倍#include<iostream>#include<cmath>#include<cstring>#include<cmath>#include<algorithm>#include<stack>#include<queue>#include<map>const int maxn = 2e原创 2021-05-27 23:54:21 · 72 阅读 · 0 评论 -
Codeforces 1506.D.Epic Transformation
这道题的思路是找到数组中出现次数最多的数字,然后比较它和数组的大小,如果出现的次数达到了数组大小的1/2,那么就输出2*大小-1;否则输出n%2#include<iostream>#include<cmath>#include<cstring>#include<cmath>#include<algorithm>#include<stack>#include<queue>#include<map>原创 2021-05-27 23:00:30 · 109 阅读 · 0 评论 -
Codeforces 1428.B. Belted Rooms
有两种情况:第一种,可以完成一个大回旋,即全为逆时针或顺时针第二种,中间夹杂着反向的传送带,这种情况下,如果这个房间连接着任何一个双向传送带,那么这个传送带也可以完成退房#include<iostream>#include<cmath>#include<cstring>#include<cmath>#include<algorithm>#include<stack>#include<queue>#incl原创 2021-05-27 17:05:28 · 124 阅读 · 0 评论 -
Codeforces 1428.C. ABBB
从题目的描述中可以看出这道题可以用栈来解答如果是A,就压入栈;如果是B,在满足消除的情况下把前面的弹出,不满足就压入。因此,最终结果一定为BAAAAA……或AAAAAAA……使用上面的这种维护手段可以得到答案#include<iostream>#include<cmath>#include<cstring>#include<cmath>#include<algorithm>#include<stack>#includ原创 2021-05-27 16:20:07 · 284 阅读 · 0 评论 -
Codeforces 1525.B. Permutation Sort
简单分析一下,如果是完全逆序,需要三次;如果头段或尾端符合,那么需要一次,完全有序,则需要0次。#include<iostream>#include<cmath>#include<cstring>#include<cmath>#include<algorithm>#include<stack>#include<queue>#include<map>const int maxn = 3e5 +原创 2021-05-26 22:35:41 · 91 阅读 · 0 评论 -
Codeforces 1529.B. Sifid and Strange Subsequences
因为题目要求任意两个数相减的绝对值不小于最大值,根据数学分析,如果所有数字都为正,那么不能满足要求,所以,答案的初值赋予数组中非正整数的个数,如果多出的那个正数满足题意,那么答案加1#include<iostream>#include<cmath>#include<cstring>#include<cmath>#include<algorithm>#include<stack>#include<queue>#原创 2021-05-25 21:53:06 · 136 阅读 · 0 评论 -
Codeforces1517C.Fillomino 2
https://codeforces.com/problemset/problem/1517/C题目大意是说给我们一个长度为n的数组表示一个n*n的矩阵的主对角线能否让每个数字的值输出相应个数的元素因为题目的输入是从1到n,所以不需要考虑溢出的情况我们可以模拟一下这个过程,可以发现,只要输入合法,那么就一定会有答案因此,我们可以采用从左到右的方法来进行输出,使数据尽量贴近左侧,这样输出就可以实现题目的目标了#include<iostream>#include<algorith原创 2021-04-29 16:13:45 · 347 阅读 · 0 评论 -
Codeforces1514B.AND 0, Sum Big
题目大意是给两个变量n和k,n表示数组的大小,数组中的元素值不能超过2的k次方。同时,它还要求满足其他两个条件首先,使用元素按位和等于0这个好理解,比如4的二进制是10,1的二进制是01,它们的和为0而在这个数组中,只要取一个数为0,那么位和就一定为0它还要求元素之和应该尽量大所以,我们除了0之外只能取,2的k次方减1到2的k次方减n-1的数,总共是k个,而每个元素都有这么多取法因此,这道题的最终输出就是,n的k次方#include<iostream>#include<a原创 2021-04-27 19:44:10 · 90 阅读 · 0 评论 -
codeforces1513F.Swapping Problem
https://codeforces.ml/problemset/problem/1513/F题解是抄的,磨了几个小时还是不会#include<iostream>#include<algorithm>#include<cmath>#include<stack>#include<map>#include<cstring>#include<vector>using namespace std;#defin原创 2021-04-26 16:27:28 · 211 阅读 · 0 评论