上一页 1 ··· 8 9 10 11 12 13 14 15 16 ··· 19 下一页
摘要: 题意有点难描述,俺懒,传送门:Problem - C - Codeforces (Unofficial mirror by Menci) 画图可知: 设x已知 点(a,b)要么在(2*k*x+c,c)上 要么在(2*k*x-c,c)上 分类讨论: 1,当点(a,b)要么在(2*k*x+c,c)上 那 阅读全文
posted @ 2022-07-11 21:26 liyishui 阅读(25) 评论(0) 推荐(0)
摘要: 每次可对某个数进行*x的操作,操作k次 求最大or和 or:有1则1 那么容易想到贪心地把所有操作都加到同一个数上 但是我现场卡了 赛后听人家balabala...顿悟! 对最大的进行操作不一定是最优解,但是对拥有最高位1的数进行操作一定是最优解 (如果不能证明正确性,for循环一遍也才O(N),又 阅读全文
posted @ 2022-07-11 21:16 liyishui 阅读(38) 评论(0) 推荐(0)
摘要: 这题的题意有点绕 给定序列a1,a2,a3... 要你确定一个x,使得a1-x,a2-x,a3-x使得weekness最小 定义poorness为abs(任意连续子序列的和),weekness是最大的poorness 就是,求一个x使得序列a1-x,a2-x,a3-x的连续子序列的和的绝对值的最大值 阅读全文
posted @ 2022-07-11 21:01 liyishui 阅读(46) 评论(0) 推荐(0)
摘要: 给定若干个点对,每个点对包含的数字均在1-n之间 要求把这些点对分到两个set里面,使得每个set里面的n不重复 (话说我的第一反应是2-set然后慌张自己2-set不会打嘿嘿嘿) 一般这种匹配,冲突,点,都和图论有点关系 和图论有点关系就是要建图啦 俺的建图是把数字看成一个节点,如果存在点对,比如 阅读全文
posted @ 2022-07-11 20:50 liyishui 阅读(57) 评论(0) 推荐(0)
摘要: 大意是说给你两个集合a和b,集合大小均为n,不能动a 但可以对b中的数字进行*2,或者/2的操作(次数不限) 问有没有可能把b变成a? 俺看到*2和/2,反应是懵逼的..但知道它们和位运算的对应关系后就有趣很多了~ 把一个数字变成二进制形式,*2就是把所有1的位置一起往左移动一位,/2就是往左(算是 阅读全文
posted @ 2022-07-11 20:40 liyishui 阅读(79) 评论(0) 推荐(0)
摘要: 思路来自实验室一个work hard的学长~ 题意是说有一个点集,在树上,能否一笔画把这些点集走一遍 easy版本因为q在[1,5]之前,范围比较小,可以暴力 考虑什么情况下不能一笔画~ 如果对于一个点,它的分支有父亲fa、若干个儿子son 设想如果很多个分支上都有点集,显然没法一笔画走过去 当且仅 阅读全文
posted @ 2022-07-11 20:23 liyishui 阅读(147) 评论(0) 推荐(0)
摘要: 记录一下LCA的板子,hin久没打了就是说(LCA的板子左转去某谷找) 判断一个点集是不是都在同一条链上,考虑在同一条链上的会有什么特性: for(int i=1;i<=k;i++) { if(p[i]==p1||p[i]==p2||p[i]==plca) continue; if(p1!=plca 阅读全文
posted @ 2022-07-11 20:14 liyishui 阅读(54) 评论(0) 推荐(0)
摘要: 首先想到如果拿出来的是1,肯定不会改变value 然后如果两次拿出的都是4,得到的结果是一样的,只能算一种 想统计除了1以外的数的个数(去重后的) 89tps~ 然后看了一下数据范围,a是可以等于0的 0的情况下,拿走非零的数肯定没改变 拿走0不一定: 如果只有一个0,拿走了0,答案是1 如果有两个 阅读全文
posted @ 2022-06-19 21:27 liyishui 阅读(45) 评论(0) 推荐(0)
摘要: 三行代码系列: # 获得输入的一个字符串s,以字符减号(-)分割s,将其中首尾两段用加号(+)组合后输出。 b = input.split("-") print("{}+{}".format(b[0],b[-1])) # 打印输出如下信息:‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬ 阅读全文
posted @ 2022-06-15 23:03 liyishui 阅读(1191) 评论(1) 推荐(0)
摘要: 有点疑惑为什么会出现在数据结构的题单里 明明是STL君啦! #include<bits/stdc++.h> using namespace std; const int maxn=3*int(1e5)+7; vector<int>s[maxn]; int n,m,col[maxn]; int mai 阅读全文
posted @ 2022-05-17 23:09 liyishui 阅读(31) 评论(0) 推荐(0)
上一页 1 ··· 8 9 10 11 12 13 14 15 16 ··· 19 下一页