Codeforces
ArkBagpipe
这个作者很懒,什么都没留下…
展开
-
Codeforces Good Bye 2017
A. New Year and Counting Cards 题意:牌的正面是数字反面是字母,要判断是否所有的元音字母背面都是偶数。题解:需要翻的牌是所有的元音字母与奇数。#include<cstdio>#include<cstring>#include<cmath>#include<cstdlib>#include<queue>#include<vector>#include<原创 2018-01-13 08:40:47 · 417 阅读 · 0 评论 -
Codeforces EduRound 50 C. Classy Numbers (组合数学)
1036C定义Classy Integer为不超过三个数位为非零数的数。给出q次询问,每次要求给出[l,r]区间中Classy Integer的数目。计算[l,r]的结果,考虑以cal(r)-cal(l)的形式给出。考虑某个数字的前缀有k个非0的数位,后缀的长度为x,且前缀之后第一位为d的情况。如果d为0,这个时候显然答案为0,。否则,因为我们要计算的是[1,r]区间的答案,在小于r的情况...原创 2018-09-19 15:26:01 · 244 阅读 · 0 评论 -
Codeforces Round 500 D & E
题目链接D. Chemical Table考虑如果(i,j)处被标记,就相当于将第i行和第j列关联到了一起。相互关联的某些行和列,根据规则就可以把它们的全部交点都标记。因此当且仅当所有的行列都相互关联的时候,可以将所有的点都标记。将行和列都看成点,实际上就是连最少的边让所有的点都连通。也就是连通块的数目减1。#include<cstdio>#include<c...原创 2018-07-31 16:46:05 · 264 阅读 · 0 评论 -
Codeforces EduRound 48 D & E
1016D D. Vasya And The Matrix对于一个n*m的矩阵,给出每行和每列元素的异或和,求原矩阵的一个可能方案。考虑到异或的一个性质a^b^b=a^0=a,用一行的m-1列和一列的n-1行控制异或值,这一行和这一列的交点处可以通过行或列的异或和以及其他确定的位置计算而来,其余位置都为0。#include<cstdio>#include<cstr...原创 2018-08-04 11:29:47 · 408 阅读 · 0 评论 -
Codeforces Round 499 C & E
题目链接C. Fly二分燃料重量,由于只有1000个星球,每次判断的时候直接模拟一遍这个过程即可。二分浮点数的时候本应该格外小心精度,然而以前不少题没有格外注意也AC了,于是思想逐渐麻痹orz,于是这次挂了。谨记……膨胀真可怕.jpg#include<cstdio>#include<cstring>#include<cmath>#in...原创 2018-07-27 08:57:12 · 319 阅读 · 0 评论 -
Codeforces Round_489 & EduRound_47
EduRound_47_C Annoying Present1009C每次添加的时候,必然会加上n个x,只有d的数目是不确定的。这里采用贪心的方法,如果d>0,就让d尽可能多,把位置定在两端的某处。如果d<0就让它尽可能少,位置定在中间。中间的这些过程还是用long long比较精确。#include<cstdio>#include<cstring&g...原创 2018-07-21 17:12:18 · 464 阅读 · 0 评论 -
4.30-5.6练习
1. Codeforces Round #475C. Alternating System: s是一个以k为周期的字符串。计算:显然就是先算出前k个的和然后通过周期构造一个等比数列了。。。这个模数不是通常的1e9+7而是1e9+9,cf也十分贴心地加了一句提示:Note that the modulo is unusual!然而窝当时猛的一激灵:嗯???这题模数是个合数??果然cf心机婊然后冷静分...原创 2018-05-06 17:03:48 · 192 阅读 · 0 评论 -
Educational Codeforces Round #41 (D&E)
ABC就是暴力暴力暴力哇……D. Pair of Lines: 给出平面上n个点的坐标,问是否存在两条直线使得这n个点中的每一个都至少位于一条直线上。两条直线,首先要确定其中一条直线,然后将不在这条直线上的所有点取出来判断它们是否共线。前三个点必定可以确定一条直线,直接枚举三种组合方式。n<=4时直接输出Yes。#include<cstdio>#include<cstri...原创 2018-04-05 10:38:15 · 288 阅读 · 0 评论 -
Codeforces Round #470 (VK Cup 2018 Round 1)
1.Codeforces Round #470 (VK Cup 2018 Round 1)A. Protect Sheep: 地图上有羊有狼,需要在空白处放狗将羊和狼分隔开。羊和狼有相邻的时候肯定搞不定,否则……只需要……把所有的空地……都放上狗。(○` 3′○)#include<cstdio>#include<cstring>#include<cstdlib&g...原创 2018-03-17 23:00:22 · 198 阅读 · 0 评论 -
Codeforces Round #466
A. Points On the Line题意:数轴上有n个点,问最少去掉多少个点才能使剩下的点的最大距离为不超过k。题解:排序后n^2枚举区间。#include<cstdio>#include<cstring>#include<cmath>#include<cstdlib>#include<queue>#include<...原创 2018-02-24 22:26:19 · 277 阅读 · 0 评论 -
Codeforces Round #461
A. Cloning Toys 题意:初始时有一个原版玩具,使用一个原版玩具可以制造出一个原版玩具和一个复制玩具,使用一个复制玩具可以制造出两个复制玩具。问能否得到特定数目的原版和复制玩具。 题解:a个原版b个复制,直接判断,注意特判情况a为0时b必为1、b为1时a必为0。#include<cstdio>#include<cstring>#include<cmath>#include<cs原创 2018-02-19 23:44:31 · 188 阅读 · 0 评论 -
Codeforces Round #460 & Educational Round 37
Round #460 C. Seat Arrangements 题意:给定一个由’*’和’.’组成的二维数组,问这之中能够找出多少连续的k个’.’。 题解:要求找连续的k个’.’,那么如果存在连续的p个’.’,就能找出p-k+1个要求的子串。只需对每一行与每一列处理找出所有连续的’.’即可。#include<cstdio>#include<cstring>#include<cmath>#i原创 2018-02-18 23:41:43 · 202 阅读 · 0 评论 -
Codeforce Round #457 & Round #458
Round #457 B. Jamie and Binary Sequence 题意:给定n和k,要求将n表示为k个2的幂之和,输出最高幂最小且字典序最大的结果。题解:首先将n一位一位地拿出来,如果位数大于k肯定是无法合并了,无解。如果位数小于k就需要根据2^m=2^(m-1)+2^(m-1)将其中的某些项分解。每次将最大的幂分解成两倍数目的较小的幂,这样保证了最大的幂最小。如果此时的数目超过了原创 2018-02-04 20:11:02 · 257 阅读 · 0 评论 -
Educational Codeforces Round 35 (Rated for Div.2)
A.Nearest Minimums 题意:给出一个数列,要求找出所有最小值间的最小间隔。直接先扫一遍找出最小值,然后将最小值取出来单独构造一个数列,再扫一遍新数列即可。#include<cstdio>#include<cstring>#include<cmath>#include<cstdlib>#include<queue>#include<vector>#include<iost原创 2017-12-30 11:00:14 · 280 阅读 · 0 评论 -
Codeforces Hello 2018
A. Modular Exponentiation 题意:给定m和n,求m模2的n次方的值。题解:n大的时候就是m,n小的时候就把2的n次方算出来。#include<cstdio>#include<cstring>#include<cmath>#include<cstdlib>#include<queue>#include<vector>#include<iostream>#inc原创 2018-01-13 17:05:28 · 229 阅读 · 0 评论 -
Codeforces Round 510 D. Petya and Array (树状数组)
1042D给出一个数组a,问存在多少对l, r满足i < j且。从l 到r 的和小于t,即sum(r)-sum(l-1)<t,其中sum是a的前缀和。实现的方法就是从前往后对于每一个sum(i),看在它前面有多少个大于sum(i)-t的前缀和。这个过程用树状数组来维护,每次加入sum(i-1),然后查询sum(i)。这样可以保证每次查询sum(i)的时候,存在于树状数组中的...原创 2018-09-19 16:42:36 · 397 阅读 · 0 评论