2023年7月22日
摘要:
狠狠地切割(Easy Version) 题意:给定一个a数组,然后在数组中把属于b数组的数字删掉,变为隔板,问最后分割成了几个区间 思路: 我们可以发现bi的范围在2e6,那么我们可以对属于b数组的数字进行标记,如果b数组中有6,我们标记vis[6]=true。 然后我们对a数组进行遍历,当我们遍历
阅读全文
posted @ 2023-07-22 23:16
IR101
阅读(111)
推荐(0)
摘要:
D. Balanced Round 题意:一个n大小的数组,一个操作可以删除一个数字,并且可以随便排列,问操作几次,可以使相邻的最大的差≤k 思路:排序,算符合条件的区间 代码: #include<bits/stdc++.h> using namespace std; void solve(){ i
阅读全文
posted @ 2023-07-22 15:55
IR101
阅读(30)
推荐(0)
posted @ 2023-07-22 13:25
IR101
阅读(13)
推荐(0)
2023年7月20日
摘要:
马猴烧酒 题意:懂得都懂 思路:由于n的范围很小,直接爆搜枚举一下a放到第几行,然后当枚举到a次的时候,判断一下需要几次b操作 代码: #include<bits/stdc++.h> using namespace std; int const N=1e4+5; #define int long l
阅读全文
posted @ 2023-07-20 12:20
IR101
阅读(21)
推荐(0)
摘要:
A. Technical Support 题意:简单的栈 思路:stack 代码: #include<bits/stdc++.h> using namespace std; int const N=1e4+5; #define int long long int fa[500005]; int d[
阅读全文
posted @ 2023-07-20 10:42
IR101
阅读(18)
推荐(0)
2023年7月18日
摘要:
A. Unit Array 题意:一个操作可以将-1变成1,问最少操作几次,可以是数组的和>=0,数组的积为正数 思路:求一遍和,然后操作一次+2,求>=0的次数,再判断-1剩下的个数,若是奇数,再操作一次 代码: #include<bits/stdc++.h> using namespace st
阅读全文
posted @ 2023-07-18 20:03
IR101
阅读(32)
推荐(0)
摘要:
A. The Man who became a God 题意:将一个数组划分为k部分,使得每个部分的相邻数字的差值的绝对值之和的和最小是多少 思路:按照差值排个序,将差值最大的k个删除,即可 代码: #include<bits/stdc++.h> using namespace std; void
阅读全文
posted @ 2023-07-18 19:37
IR101
阅读(21)
推荐(0)
摘要:
A. Forbidden Integer 题意:n能否被分解为若干个整数之和,这些整数在[1,k]内,且不等于x 如果可以,输出方案 思路:分类讨论 能分为1则为1的和,x!=1 如果x=1,k=1,不行,k=2,如果是偶数,则可以,奇数不行,k>=3,任何都可以 代码: #include<bits
阅读全文
posted @ 2023-07-18 12:41
IR101
阅读(25)
推荐(0)
2023年7月17日
摘要:
中位数 题意:给一个序列,m次操作,每次操作给两个数,p,x,把a[p]改成x,问每次操作后中位数是多少 思路:修改用树状数组,将a[p]--,然后将x++;查询二分查询树状数组,查询值为1到mid的数字有多少个,如果是一半,则mid为中位数 代码: #include<bits/stdc++.h>
阅读全文
posted @ 2023-07-17 19:52
IR101
阅读(42)
推荐(0)
摘要:
二分交互 题意;一个1到10000的数字,你来猜测它是多少,每当你猜一个数他会返回>=或<,最后输出这个数字,你最多只能猜25次。 思路:二分 代码: #include <cstdio> #include <cstring> using namespace std; int main() { int
阅读全文
posted @ 2023-07-17 19:43
IR101
阅读(116)
推荐(0)