思维
文章平均质量分 50
肩上有风_
这个作者很懒,什么都没留下…
展开
-
Plus and Multiply(思维)
有一个无穷的集合, 初始集合内有整数1, 现给定你整数a和b.集合内部元素有如下定义: 若x存在于集合中, 则x * a存在于集合中, x + b也存在于集合当中.请你判断整数n是否存在于集合中.原创 2022-07-07 18:08:35 · 307 阅读 · 0 评论 -
Helping the Nature(思维,差分,构造)
给你一个长度为 n 的序列 a,每次可以进行一下三种操作的任意一种求将序列a中的每个元素变为1的最小操作次数。通过操作1和操作2我们可知它是对序列的左右区间是有影响的,而操作3是对整个序列是有影响的。并且我们发现当序列是单调递增的时候,我们可以很容易的求出来操作次数。例如: 5 5 6 8 9 将此序列全部变成0的最小操作次数为9次,即只选择操作二即可,选择的下标为 :1,1,1,1,1,3,4,4,5。所以我们很容易发现当序列是单调递增且a1≥0的时候,操作次数为an......原创 2022-07-07 16:21:55 · 452 阅读 · 2 评论 -
Number of Ways(思维,前缀和)
给你一个长度为n的数组,将其分成三个连续的区间,且每个区间的总和相等,问一共有多少种分法?首先,对原数组求一边前缀和 (s[ ] 表示前缀和数组),看 s[n]%3是不是等于0,若不等于0,直接输出0即可,否则,遍历一遍前缀和数组,用一个变量 cnt 来记录在这之前一共有多少个位置的前缀和 = s[n] / 3 ,如果当前位置s[i] = s[n] / 3 * 2,则答案加上cnt即可。...原创 2022-07-07 10:07:18 · 219 阅读 · 0 评论 -
AtCoder Beginner Contest 225 E(贪心,思维)
题目链接:link题目大意:在二维坐标系的第一象限上给你 n 个 ‘ 7 ’,问通过删除一些 ‘ 7 ’后最多可以看见多少个 ‘ 7 ’。解题思路:分别将每个 ‘ 7 ’的两个端点与原点相连,这两条直线与X轴形成角的弧度值可以视为一个区间,这样问题就转换成了给你n个区间,问最多有多少个区间不相交。求区间不相交的个数: 对区间的右端点进行升序排序,然后从左往右贪心。注意: 弧度用 long double 存储可以避免精度问题,atan2(a,b)表示 斜率为(a / b)的直线与X轴形成角的弧度值原创 2022-01-12 10:47:37 · 330 阅读 · 0 评论 -
Game Master(思维 + 贪心)
题目链接:Game Master题目大意:有n名玩家和两张地图,已知每名玩家在每张地图上的战斗力,一共进行n-1场比赛,每次比赛选择一张地图和两名玩家,战斗力强的玩家最终获胜,问每名玩家是否能赢得最终的比赛。解题思路:将n名玩家在第一张地图上的战斗力进行升序排序,可知最后一名玩家可以赢得比赛,然后进行倒序查找,判断当前玩家在第二张地图上的战斗力是否大于已知可以赢得比赛的所有玩家在第二张地图上战斗力的最小值,若大于,则该玩家及之后的所有玩家都可以赢得比赛,因为之后的玩家在第一张地图上的战斗力都比该玩家原创 2021-12-12 13:23:45 · 904 阅读 · 1 评论 -
Two Buttons(思维)
题目链接:Two Buttons题目大意:给你两个正整数 n 和 m。以下操作可以进行任意次操作一:n = n * 2操作二:n = n - 1问将n变成m的最小操作次数。解题思路:当 n ≥ m 时,毋庸置疑答案为n - m。当 n < m 时,分以下两种情况:m为偶数时,他一定是某个数一直执行操作一得到的,所以我们一直让m除以2,终止的条件为m%2 != 0或者m ≤ n,若m ≤ n答案为执行的次数+ (n - m),若最后m > n,那么答案为执行的次数+ n到新的m原创 2021-12-08 20:14:28 · 305 阅读 · 0 评论