随笔分类 -  codeforces

摘要:A. Circuit 题意:有n个灯和2n个开关,每个开关控制一个灯,每个灯被两个开关控制,如果控制一个灯的两个开关中恰好有一个打开,这个灯就会亮。你不知道具体哪些开关控制哪些灯。现在给你2n个灯的开关状态,求最少亮多少灯和最多亮多少灯。 最少的状态就是尽量让两个打开的开关控 阅读全文
posted @ 2025-02-04 15:57 maburb 阅读(6) 评论(0) 推荐(0) 编辑
摘要:A. Milya and Two Arrays 题意:给你两个长度为n的数组aba,b中的每个元素都至少出现两次。你可以重新排列a,最后要使得ai+bi的不同种类大于等于3。 统计ab的种类数cnt1,cnt2 阅读全文
posted @ 2025-02-03 00:35 maburb 阅读(300) 评论(0) 推荐(0) 编辑
摘要:A. String 题意:给你一个01串,你每次选一个子序列,其中相邻的两位不相同,如何把这个子序列位置上的数取反,问多少次能变成全0。 因为必须是10交替,那么取反后相当于没操作。所以我们每次操作一个1就行。这样操作数是1的个数。 点击查看代码 void solve() { std::string 阅读全文
posted @ 2025-01-27 01:06 maburb 阅读(347) 评论(0) 推荐(1) 编辑
摘要:A - Secret Sport 题意:两个人比赛,每有一个人赢了X场就算它赢了一轮。比赛是在有一个人赢了Y轮后结束。你不知道XY,但给你一个每场的输赢情况,求谁是赢家。 去求XY非常难,不如倒着想,一轮必然是因为赢的那个人赢了一把而结束,同样,整个比赛也是因为赢的那 阅读全文
posted @ 2025-01-24 22:00 maburb 阅读(9) 评论(0) 推荐(0) 编辑
摘要:A. Minimal Coprime 题意:互素区间是指gcd(l,r)=1的区间,极小互素区间是互素区间并且没有一个被他包含的区间也是互素区间。问你区间[l,r]里有多少个极小互素区间。 根据数论的基础知识,x,x+1一定是互素的,所以统计所有长度为2的区间 阅读全文
posted @ 2025-01-22 22:59 maburb 阅读(374) 评论(0) 推荐(0) 编辑
摘要:A. Kevin and Arithmetic 题意:给你n个数,你一开始有一个x=0,每次你让x加上一个没用过的数,然后x会一直除二直到变成奇数。如果你加上一个数后能除2,分数加1,问分数最大多少。 奇数后面加奇数才能是偶数,但一开始x是零,那么需要一个 阅读全文
posted @ 2025-01-21 18:03 maburb 阅读(104) 评论(0) 推荐(0) 编辑
摘要:A. Fibonacciness 题意:给你a1,a2,a4,a5,你可以让a3等于任何数,求最大有多少个i满足1<=i<=3,ai+ai+1=ai+2。 枚举a3分别等于\(a_1 + a_2,a_4 - a_2, 阅读全文
posted @ 2025-01-20 01:09 maburb 阅读(557) 评论(0) 推荐(3) 编辑
摘要:A. Milica and String 题意:给你一个只包含AB的串,你每次可以让一个前缀都变成A或者都变成B,问让字符串恰好有kB的最小操作数和方案。 我们最多操作一次。如果我们B的数量大于k,那么我们找一个恰好有\(k-cnt 阅读全文
posted @ 2025-01-19 14:40 maburb 阅读(4) 评论(0) 推荐(0) 编辑
摘要:A. green_gold_dog, array and permutation 题意:给你一个数组a,你要构造一个排列b,使得不同的aibi尽可能多。 我们按ai从小到大分配n1,这样aibi一定大于ajbj\( 阅读全文
posted @ 2025-01-18 15:31 maburb 阅读(5) 评论(0) 推荐(0) 编辑
摘要:A. Shape Perimeter 题意:一个m×m的印章每次往右上方向移动,问盖出来的图形周长。 假设每次都能盖m×m的格子,那么看每两次盖章有多重复的减去就行。第i次移动了xi,yi,那么就会有一个\(m-x_i, m-y_i\ 阅读全文
posted @ 2025-01-18 00:35 maburb 阅读(124) 评论(0) 推荐(0) 编辑
摘要:A. Line Trip 题意:你要从0x,然后再从x0,路上有一些加油站,每行驶一单位消耗一格油,到了加油家会加满油,问油箱至少得多大。 显然油箱要支撑我们行驶完任意两个相邻点之间的路程,注意最后xan的路径因为要返回所以要算两遍。 点击查看 阅读全文
posted @ 2025-01-17 15:39 maburb 阅读(3) 评论(0) 推荐(0) 编辑
摘要:A. Jagged Swaps 题意:给你一个排列,你每次可以选择一个i, 满足ai>ai1ai>ai+1,然后交换aiai+1。 问能不能给数组升序排列。 显然第一个不能动,所以它一定得是1。在满足这条件后, 阅读全文
posted @ 2025-01-16 21:34 maburb 阅读(2) 评论(0) 推荐(0) 编辑
摘要:A. Cover in Water 题意:有n个格子,有些格子是好的,有些是坏的,你要给好格子都装上水,你可以花费一点价值让一个格子有水, 也可以把一个格子的水移到另一个格子,没有花费。如果一个格子是好格子并且两边的格子都有水,这个格子就会自己填满水。 问最少花费让所有好格子有水。 容易想到,如果有 阅读全文
posted @ 2025-01-16 15:10 maburb 阅读(5) 评论(0) 推荐(0) 编辑
摘要:A. Bus to Pénjamo 题意:有n个家庭,每个家庭有ai个人,现在有r排座位,每个座位可以坐两个人。如果一个人自己一个坐一个座位或者和自己家庭的人坐一个座位,他就会开心,问所有人都入座后最多有多少人开心。 我们肯定尽量让一个座位坐两个同一家庭的人,这样一个座位可以让两个人开心。 阅读全文
posted @ 2025-01-15 15:57 maburb 阅读(17) 评论(0) 推荐(0) 编辑
摘要:A. Binary Imbalance 题意:给你一个01串,每次选一个01或者一个10在他们中间插一个0进去,问能不能让0的个数大于1。 我们进行一次插入操作后,显然还可以继续操作,所以只要有0和1就一定可以。注意特判全0的情况。 点击查看代码 void solve() { int n; std: 阅读全文
posted @ 2025-01-14 17:09 maburb 阅读(3) 评论(0) 推荐(0) 编辑
摘要:A. Set 题意:给你[l, r]中的所有数和一个k,每次操作选一个数,这个数在剩下的数里有至少k个倍数,然后删掉这个数。求最大操作次数。 我们删除一个数不会影响后面的数能不能删,所以应该从小到大删,发现如果r / x大于等于k,那么x可以被删,那么最后一个满足的x就是r / k,看和l之间有多少 阅读全文
posted @ 2025-01-13 17:53 maburb 阅读(4) 评论(0) 推荐(0) 编辑
摘要:前言 这把打爽了,因为c题写错一个地方然后眼瞎一个小时没看见,直接掉大分。而且今天状态貌似很差,代码总是写错,ab都是莫名wa一发。 A. Two Frogs 题意:Alice和Bob在[1,n]这个区间玩,一开始Alice在a,Bob在b,他们轮流走,每个人可以往左或者往右,但不能越界,也不能走到 阅读全文
posted @ 2025-01-13 00:36 maburb 阅读(487) 评论(0) 推荐(0) 编辑
摘要:A. Alice's Adventures in "Chess" 题意:你从(0, 0)出发,重复固定的移动路径,问能不能经过(a, b)。 直接跑一百次就行,因为ab都很小(其实只要跑20次)。 点击查看代码 void solve() { int n, a, b; std::cin >> n >> 阅读全文
posted @ 2025-01-12 14:45 maburb 阅读(8) 评论(0) 推荐(0) 编辑
摘要:A. Alyona and a Square Jigsaw Puzzle 题意:一个人搭一个矩阵,一圈圈的围,每天放ai个方块,当某天正好搭出来一个矩阵他就开心。问有多少天是开心的。 发现每搭一圈,矩阵长度加2,不同边长矩阵需要的方块也可以算出来,按题意模拟就行。 点击查看代码 void 阅读全文
posted @ 2025-01-10 15:50 maburb 阅读(15) 评论(0) 推荐(0) 编辑
摘要:A. Preparing for the Olympiad 题意,有两个数组a和b,如果你选了a数组中第i个,那么对手获得b数组第i+1个,求你们得分的差值最大。 直接加上所有ai > bi+1的就行。 点击查看代码 void solve() { int n; std::cin >> n; std: 阅读全文
posted @ 2025-01-09 16:20 maburb 阅读(57) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示