贪心/二分/模拟枚举
文章平均质量分 85
贪心策略的选择很重要。
zaiyang遇见
我走过山的时候,山不说话;
我路过海的时候,海不说话。
相遇还是不相遇,都是献给岁月的序曲 !
展开
-
小苯的01背包easy(枚举,位运算&,思维推导)
本问题中,物品的总体积定义为所装物品的体积的 &(按位与),总价值也定义为所装物品的价值的 &(按位与)。(如果不选物品,则价值为 0,所占体积也为 0。输出包含一行一个整数,表示能装的最大价值。体积是选的越多越可行, 所以可以枚举答案。的前提下,他最多能装价值为多少的物品。计算出这些物品的总体积, 如果满足容量。个物品,每个物品有一个体积。,表示每个物品的体积和价值。& 操作的特点,越 & 越小。分别表示物品个数和背包容量。价值为:3 & 6 = 2。选择第一个和第三个物品。选择第一个和第二个物品。原创 2024-05-25 21:30:00 · 1035 阅读 · 1 评论 -
Maximize(枚举,__gcd函数,数学,gcd推导)
你的任务是找出任意一个整数。函数,快速实现求最小公约数。推倒的过程,数学能力要求高。的最大值,核心思想是找出。满足,输出任意一个即可。,最容易想到的就是枚举。一个整数,满足条件的。另外一种解法就是考虑。原创 2024-05-03 19:00:00 · 792 阅读 · 0 评论 -
Make It Ugly(模拟,序列长度)
在第一个测试案例中,不可能通过修改数组的方式使其不再美丽。无论我们从数组中删除多少数字,由相同数字组成的数组都会保持美丽。,要使数组不再美丽,至少要删除多少个元素?如果不可能这样做,那么输出。在第三个测试用例中,可以删除前三个元素。让我们看看它是否美丽。为美丽数组,则一定能是所有的元素都相同,即。我们在变换一致的过程中,能选择的下标的范围为。在第二个测试案例中,你可以删除索引。如果不可能,那么输出 -1。输出一个整数–为了使数组。不再美丽,你必须从数组。中移除的最小元素数。原创 2024-04-17 19:00:00 · 779 阅读 · 0 评论 -
Platforms Jumping(贪心,处理策略)
您想知道的是,如果您可以将任意平台向左或向右移动任意次数(可能是零),只要它们不相交(但两个平台可以相碰),那么是否有可能从。记录当前的位置,若前面有木板,先走到木板的右边再开始跳,每次跳跃最大距离,落脚点若为水,则移动一个木板到当前的落脚点。处理的办法,先把所有的木板按顺序放置再右边,同时记录编号。若单纯的判断是否能够到达,是比较简单的,直接每次跳跃最大距离。注意,在开始跳跃之前,应先移动平台(换句话说,先移动平台,然后开始跳跃)。,分别是河流的宽度、平台的数量和跳跃的最大距离。的连续子块,所有等于。原创 2024-04-10 21:48:17 · 983 阅读 · 0 评论 -
木棍加工(贪心)
根,每根棍子的长度和宽度都是已知的。机器处理一根棍子之前需要准备时间。处理完一根棍子后,尽可能的让所有符合条件的棍子都在这跟棍子后面处理。花费一个准备时间,处理尽可能多的棍子。( 按 (4, 9)、(3, 5)、(1, 4)、(5, 2)、(2, 1)的次序进行加工)。长度从大到小排序,长度相同时,宽度从大到小排序。根棍子所需要的最短准备时间。仅一行,一个整数,所需要的最短准备时间。的棍子,那么如果下一个棍子长度为。,这个棍子就不需要准备时间,否则需要。根棍子,长度和宽度分别为。第一根棍子的准备时间为。原创 2022-06-24 15:41:47 · 239 阅读 · 0 评论 -
糖糖别胡说,我真的不是签到题目(前缀和)
题目链接:https://ac.nowcoder.com/acm/problem/14583题目描述从前,有n只萌萌的糖糖,他们分成了两组一起玩游戏。他们会排成一排,第i只糖糖会随机得到一个能力值bi。从第i秒的时候,第i只糖糖就可以消灭掉所有排在他前面的和他不是同一组的且能力值小于他的糖糖。为了使游戏更加有趣,糖糖的爸爸,娇姐,会发功m次,第i次发功的时间为ci,则在第ci秒结束后,b1,b2,…,bci都会增加1.现在,娇姐想知道在第n秒后,会有多少只糖糖存活下来。输入描述:第一行只有一个整原创 2020-06-04 22:28:04 · 623 阅读 · 2 评论 -
POJ - 3279 Fliptile(枚举+位运算+视频讲解)
题目链接:https://cn.vjudge.net/contest/321389#problem/A翻译:给你一个n*m的矩阵*,问将那些点进行多少次操作可以将矩阵全部变为0。每次翻转一个格子与它上下左右相邻的格子也会被翻转。输出最小的次数,次数相同输出字典序最小的一个,否则输出IMPOSSIBLE,输出的也是一个矩形,0表示此位置不翻转,其他数表示此位置上翻转几次。分析:如何把1变成0...原创 2019-08-22 22:02:37 · 230 阅读 · 1 评论 -
String II(枚举)
题目链接:https://ac.nowcoder.com/acm/contest/9716/A题目描述:给出一个仅包含小写字母的字符串s,你最多可以操作k次,使得任意一个小写字母变为与其相邻的小写字母(ASCII码差值的绝对值为1),请你求出可能的最长相等子序列(即求这个字符串修改至多k次后的的一个最长子序列,且需要保证这个子序列中每个字母相等)。子序列:从原字符串中取任意多个字母按照先后顺序构成的新的字符串。链接:https://ac.nowcoder.com/acm/contest/9716/A原创 2020-12-22 20:02:38 · 138 阅读 · 0 评论 -
POJ 1753 Flip Game(枚举+位运算+视频讲解)
题目链接:https://ac.nowcoder.com/acm/problem/106350Flip game is played on a rectangular 4x4 field with two-sided pieces placed on each of its 16 squares. One side of each piece is white and the other one is black and each piece is lying either it’s black or w原创 2020-06-11 20:55:08 · 711 阅读 · 0 评论 -
Maximum Sum(贪心策略,模运算,最大子段和)
在第一个测试用例中,最好在数组中取一个空子数组两次,并在任意位置插入空子数组的和。的任意连续子数组(可能为空),并在数组的任意位置插入该子数组的和。取余的时候要考虑负数的情况。若为负数可以先加上模数再进行取余。表示为原始数组中总和最大的子数组的总和。由于这个数字可能非常大,请输出取模为。其中一个操作是选择数组。次这样的操作后数组可能的最大和。核心:找到数组中总和最大的子数组。,具有最大和的子数组的和最初是。的余数等于最小非负数。表示为原始数组的总和,后得到的数组最大和。,这样得到的数组和为。原创 2024-03-28 21:00:00 · 2005 阅读 · 0 评论 -
Median of an Array(贪心策略,编程技巧)
输出一个整数 - 增加数组中位数所需的最少操作数。你的任务是找出增加数组中位数所需的最少运算次数。因此,只需一次操作,中位数就增加了。先对数组进行排序,找出数组中的中位数,即数字。对第一个数字进行一次运算,得到数组。为了使中位数增加,即至少变为。是按非递减顺序排列的数组。,因为它是非递减排序数组。,因为它是非递减排序数组。不一定包含不同的数。,这个数组的中位数是。原创 2024-03-23 16:42:56 · 881 阅读 · 0 评论