随笔分类 -  Codeforces

摘要:一.A (1)题意:给你一个数组,让你求最小的(0-1)的距离和。 (2)题解:采用贪心策略,我们肯定是01交题放法,故代码很容易写出来。 (3)代码: 1 // Problem: A. Creep 2 // Contest: Codeforces - Codeforces Round #800 ( 阅读全文
posted @ 2022-06-17 19:08 scannerkk 阅读(48) 评论(0) 推荐(0) 编辑
摘要:一.A 1.题意:给定你两个字符串,每次从一个字符串里面选取一个字符放到c串的末尾,不可以对每一个字符串连续操作k次,直到某一个取完后,这个追加操作就停止。现在问你,构成的c串最小字典序是多少 2.题解这个题根据贪心的策略,我们每次选择 一个两个字符串中间的最小的那个字符,如果该串已经操作了k次,那 阅读全文
posted @ 2022-06-12 12:55 scannerkk 阅读(32) 评论(0) 推荐(0) 编辑
摘要:一、A题 题意:给你两个数,第一个数表示1的个数,第二个数表示2的个数,现在问你最小不能表示的数是多少。 如果1为0的话,那么肯定1就是答案 如果1不为0的话,那么肯定是2的个数*2 + 1的个数,因为不论你怎么用2去凑,只要有1,那么奇数和偶数都能凑出来,因此最小不能凑出来就是2*2的个数+1的个 阅读全文
posted @ 2022-04-01 21:08 scannerkk 阅读(20) 评论(0) 推荐(0) 编辑
摘要:一、A题 (1)题目描述 (2)解题思路 这个题就是一个模拟题,如果我当前位置为0,那么我试着往下找1,找到连续的一串1,如果连续的这串一的个数大于等于2个的话,我的答案就不用改变,否则我就需要加上2 - sum(连续的一的个数),然后直到结尾就可以了。 (3)代码实现 1 #include "bi 阅读全文
posted @ 2022-03-28 18:46 scannerkk 阅读(59) 评论(0) 推荐(0) 编辑
摘要:一、A题 解题思路 这个题把式子化简一下就可以得到了a[i]和a[j]为最小和最大值就行了,所以答案就是最小值和最大值的下标 代码实现 1 #include "bits/stdc++.h" 2 #define PII pair<int,int> 3 #define rep(i,z,n) for(in 阅读全文
posted @ 2022-03-25 19:55 scannerkk 阅读(21) 评论(0) 推荐(0) 编辑
摘要:一、A题 题目意思是我做一次把某个区间逆转的操作,然后输出可能得到的最大的相邻两数之和。很明显,这个题无论如何都能让最大的和次大的两个数相加。因此我们只需要排个序,然后输出最大两个数的和就行了。 代码实现 1 #include "bits/stdc++.h" 2 #define PII pair<i 阅读全文
posted @ 2022-03-24 19:52 scannerkk 阅读(74) 评论(0) 推荐(0) 编辑
摘要:解题思路 很容易看出来这两个操作最后的赢者一定是2^n - 1,故直接输出2^n - 1就是答案 代码实现 1 #include "bits/stdc++.h" 2 #define PII pair<int,int> 3 #define rep(i,z,n) for(int i = z;i <= n 阅读全文
posted @ 2022-03-12 13:07 scannerkk 阅读(17) 评论(0) 推荐(0) 编辑
摘要:一、题目分析 解题思路:分析可知,每次operation都会把相邻的两个字符消掉,又因为字符串的长度是奇数,所以一定会把偶的消掉。故如果目标字符出现在奇数位置,即可通过接下来的操作消掉其他字符,使这个字符串成为目标字符。 代码实现: 1 #include "bits/stdc++.h" 2 #def 阅读全文
posted @ 2022-03-09 18:43 scannerkk 阅读(29) 评论(0) 推荐(0) 编辑
摘要:一、题目描述 二、解题思路 这个题目思路不难,但是容易坑你,就是中间为了防止特殊情况发生需要加上1个特殊字符,防止判断错误。(等会再说) 这个题目要我们求拼接后的单词,但是前一个单词的后缀和后一个单词的前缀的相重合的部分不再相加,所以我们想到了kmp算法,用string把输入串接上目前答案串,写个k 阅读全文
posted @ 2022-02-08 20:43 scannerkk 阅读(29) 评论(0) 推荐(0) 编辑
摘要:一、题目分析 A.Min Max Swap 题意:给你两个数组,你可以操作任意次,a【i】和b【i】交换,要求你求出a数组最大值和b数组最大值相乘的最小值。 你把较大的放入a数组,然后把较小的放入b数组,这样两个数组的最大值相乘一定是最小值。 代码实现: 1 #include <bits/stdc+ 阅读全文
posted @ 2022-01-28 19:33 scannerkk 阅读(32) 评论(0) 推荐(0) 编辑
摘要:1 #include "bits/stdc++.h" 2 using namespace std; 3 typedef long long ll; 4 inline ll read()//内联函数可以节省调用的开销,而且能够便于编译器和上下文配合做优化 5 { 6 ll s = 0,w = 1; 7 阅读全文
posted @ 2022-01-25 15:26 scannerkk 阅读(86) 评论(0) 推荐(0) 编辑
摘要:一、题目分析 A.Download More RAM 题意是给定你初始内存,和n个软件,每次运行一个软件如果你能成功运行,你就能得到永久的内存,问你最后能得到的RAM最大值为多少 按软件对内存的需求从小到大排个序,这样你能获得的永久内存越多 1 #include "bits/stdc++.h" 2 阅读全文
posted @ 2022-01-23 22:31 scannerkk 阅读(30) 评论(0) 推荐(0) 编辑
摘要:B. Minor Reduction time limit per test 2 seconds memory limit per test 256 megabytes input standard input output standard output You are given a decim 阅读全文
posted @ 2022-01-20 19:43 scannerkk 阅读(51) 评论(0) 推荐(0) 编辑
摘要:A. Equidistant Letters time limit per test 2 seconds memory limit per test 256 megabytes input standard input output standard output You are given a s 阅读全文
posted @ 2022-01-20 19:33 scannerkk 阅读(58) 评论(0) 推荐(0) 编辑
摘要:D. Not Adding time limit per test 2 seconds memory limit per test 256 megabytes input standard input output standard output You have an array a1,a2,…, 阅读全文
posted @ 2022-01-20 19:26 scannerkk 阅读(25) 评论(0) 推荐(0) 编辑
摘要:一、题目描述: 二、题目分析: 观察样例6257只需要7次权势二进制就可以加到n了为什么呢? 1111 * 1+ 1101 * 1 + 1011 * 4 + 101 1111 + 1101 + 4044 + 1 9 9 * 1 分析样例可知只需要找到这个数每位上的最大的那个数,那就是答案 三、代码实 阅读全文
posted @ 2022-01-12 18:04 scannerkk 阅读(33) 评论(0) 推荐(0) 编辑

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