![](https://img-blog.csdnimg.cn/20190927151132530.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
二分
文章平均质量分 55
二分答案+二分查找相关题目
lulutoy
平凡人创造的能量条
展开
-
分糖果-美团2023笔试(codefun2000)
当他回到家时,他发现他需要将这些糖果分配给班上的 n 个小朋友,以确保每块糖果都得恰好分到一个小朋友,而且不能有任何浪费。塔子哥知道,如果两种糖果混在一起吃,那么它们的味道就不是很好,因此每个小朋友只能得到其中一种糖果。此外,塔子哥希望尽可能让每个小朋友都能够得到尽可能多的糖果,而且他希望分得最少糖果的小朋友也能得到尽可能多的糖果。第二组数据,可以分成: (3个第一种,4个第一种,5个第二种,5个第二种),这样第一个小朋友分得最少,没有其他方案使得分得最少的那个小朋友的糖果数量更大。原创 2024-07-09 10:10:12 · 446 阅读 · 0 评论 -
田地行走-美团2023笔试(codefun2000)
塔子哥现在位于 (x1,y1) ,他想要移动到 (x2,y2) 处去收菜,但是他不想阻碍自己土地里土豆的生长情况,所以他不想在移动过程中碰到土豆。塔子哥每次移动可以移动到与他所处格子的相邻的一格中,形式化地说,如果塔子哥位于 (x,y) ,则塔子哥可以移动到 (x−1,y) , (x+1,y) , (x,y−1) , (x,y+1) 的格子之一,但塔子哥不能移动到田地之外。这里定义两个格子之间的距离为曼哈顿距离,即格子 (a,b) 和 (c,d) 之间的距离是 ∣a−c∣+∣b−d∣。原创 2024-07-08 20:55:32 · 399 阅读 · 0 评论 -
410. 分割数组的最大值(leetcode)
给定一个非负整数数组 nums 和一个整数 k ,你需要将这个数组分成 k 个非空的连续子数组。其中最好的方式是将其分为 [7,2,5] 和 [10,8]。因为此时这两个子数组各自的和的最大值为18,在所有情况中最小。输入:nums = [7,2,5,10,8], k = 2。输入:nums = [1,2,3,4,5], k = 2。设计一个算法使得这 k 个子数组各自和的最大值最小。一共有四种方法将 nums 分割为 2 个子数组。输入:nums = [1,4,4], k = 3。原创 2024-06-18 08:30:00 · 590 阅读 · 0 评论 -
300. 最长递增子序列(leetcode)
子序列是由数组派生而来的序列,删除(或不删除)数组中的元素而不改变其余元素的顺序。例如,[3,6,2,7] 是数组 [0,3,1,6,2,2,7] 的子序列。解释:最长递增子序列是 [2,3,7,101],因此长度为 4。给你一个整数数组 nums ,找到其中最长严格递增子序列的长度。输入:nums = [10,9,2,5,3,7,101,18]输入:nums = [7,7,7,7,7,7,7]输入:nums = [0,1,0,3,2,3]原创 2024-06-17 09:30:00 · 362 阅读 · 0 评论 -
1902: 浇水(New Online Judge)
你需要把花盆放在 x 轴上的某个位置,使得从被花盆接着的第 1 滴水开始,到被花盆接着的最后 1 滴水结束,之间的时间差至少为 D。第1行:两个整数 N 和 D,1原创 2024-02-09 07:45:00 · 246 阅读 · 0 评论 -
2026: 青蛙过河(New Online Judge)
不过,每块石头有一个高度,每次小青蛙从一块石头起跳,这块石头的高度就会下降1。当石头的高度下降到0 时小青蛙不能再跳到这块石头上(某次跳跃后使石头高度下降到0 是允许的)。河里的石头排成了一条直线,小青蛙每次跳跃必须落在一块石头或者岸上。其中Hi > 0 表示在河中与小青蛙的家相距i 的地方有一块高度为Hi 的石头,Hi = 0 表示这个位置没有石头。输入的第一行包含两个整数n, x,分别表示河的宽度和小青蛙需要去学校的天数。第1 块石头和对岸的距离为4,如果小青蛙的跳跃能力为3 则无法满足要求。原创 2024-02-08 08:00:00 · 1812 阅读 · 0 评论 -
2121: 管道(New Online Judge)
每一段的中央有一个可开关的阀门和一个检测水流的传感器。一开始管道是空的,位于 Li 的阀门会在 Si 时刻打开,并不断让水流入管道。对于位于 Li 的阀门,它流入的水在 Ti (Ti≥Si) 时刻会使得从第 Li-(Ti-Si) 段到第 Li+(Ti-Si) 段的传感器检测到水流。输入的第一行包含两个整数 n, len,用一个空格分隔,分别表示会打开的阀门数和管道长度。接下来 n 行每行包含两个整数 Li, Si,用一个空格分隔,表示位于第 Li 段管道中央的阀门会在 Si 时刻打开。原创 2024-02-08 07:30:00 · 1270 阅读 · 0 评论 -
1852: 松鼠与栗子(New Online Judge)
请求出最优情况下的最少的等待时间,即松鼠选择最优情况下的n个栗子树进行等待,等待时间最小是多少。现在松鼠们希望最终能获得k个栗子,每只松鼠将选择一棵栗子树等待。第三行包含m个整数表示p[i],1≤t[i],p[i]≤100。第i棵树的第一个栗子在t[i],之后每p[i]秒都掉落一个。不考虑松鼠移动到每棵树的时间,只考虑等待时间。现在有m棵栗子树,n只松鼠在等待栗子下落。第二行包含m个整数表示t[i]。第一行为正整数m,n,k。输出一个数字表示答案。原创 2024-02-07 11:06:07 · 329 阅读 · 0 评论 -
2059: 最少刷题数(New Online Judge)
对于每一名学生,请你计算他至少还要再刷多少道题,才能使得全班刷题比他多的学生数不超过刷题比他少的学生数。小蓝老师教的编程课有N名学生,编号依次是1,…第i号学生这学期刷题的数量是Ai。对于100% 的数据,1≤N≤100000,0≤Ai≤100000。输出N个整数,依次表示第1 …N号学生分别至少还要再刷多少道题。第二行包含N个整数:A1, A2, A3, …对于30% 的数据,1≤N≤1000,0≤Ai≤1000;第一行包含一个正整数N。原创 2024-02-07 07:45:00 · 259 阅读 · 0 评论 -
2060: 求阶乘(New Online Judge)
要注意二分答案右边界的设置,本题是==1100: 阶乘末尾0的个数(二)(New Online Judge)==的升级版。的末尾恰好有K个0的最小的N是多少?对于100% 的数据,1≤K≤10^18。对于30% 的数据,1≤K≤10^6。如果这样的N不存在输出-1。原创 2024-02-07 08:00:00 · 157 阅读 · 0 评论 -
2005: 光盘行动(New Online Judge)
每组样例的第一行是剩菜的个数N(1原创 2024-02-06 12:25:58 · 227 阅读 · 0 评论 -
1817: 特殊数字(New Online Judge)
第一行为正整数T,表示存在T组测试数据,1≤T≤10000。现在给定数字x,每次可以进行两种操作:令x加1、令x减1。最少执行多少次操作,可以将x变成特殊数字。每组数据输入一行,包含一个整数x,,并且x≠y,则称N为特殊数字。每组数据输出一行表示答案。原创 2024-02-06 10:52:12 · 344 阅读 · 0 评论 -
1807: 减一(New Online Judge)
对于每组测试数据第一行输入正整数n,第二行包含n个数字表示数组a。(1≤n≤100000,0≤ai≤10^9)输入第一行为正整数T,表示存在T组测试数据。给定长度为n的数组a,每次可以选择相邻的两个数字进行减1。最少执行多少次上述操作,使得所有数字都相同,不可以为负数。对于每组测试数据,如果无解输出-1,否则输出最少操作次数。50%的数据满足n为偶数,50%的数据满足n为奇数。输入保证T组数据的n的总和不超过100000。原创 2024-02-06 00:12:17 · 228 阅读 · 0 评论 -
1714: 三七过(New Online Judge)
为了进一步提升难度,任意选择两个大于1的正整数x和y来替换3和7,请问第k个数字是多少。三七过是一个报数游戏。游戏规则从1开始报数, 在报数过程中跳过3的倍数和7的倍数。也就是说,此时的报数序列为:1 2 4 5 8 10 11 13 16…输入三个正整数x,y,k,x,y不超过100,k小于10^9。本题的题意是在报数过程中,跳过x的倍数和y的倍数。输出一个数字表示答案。原创 2024-02-06 08:15:00 · 467 阅读 · 0 评论 -
1753: 游泳(New Online Judge)
小明现在在要从游泳池的左上角(1, 1)游到右下角(n, n),小明只能向上下左右四个方向游,不能游出泳池。而小明对温度十分敏感,他希望你帮他找一条最舒适的路径,使路径上的最高的水温和最低的水温差值最小。接下来n行,每行n个正整数,表示方阵每个区域的温度a[i][j]。游泳池可以等分为n行n列的小区域,每个区域的温度不同。第一行输入一个正整数n。一行一个数表示最小差值。原创 2024-02-06 08:00:00 · 232 阅读 · 0 评论 -
1705: 完美数组(New Online Judge)
删去数字的代价为删去数字中的最大值。例如1 2 2 3 4 4删去数字1和3变成2 2 4 4,代价为3。现在,给你两个长度为n的数组,恰好每个数字出现2次,你可以删去一些数字,使得这两个数组变成完美数组。2、从左往右每两个数字都必须是一样的,即A、A、B、B、C、C…例如:2 2 4 4 6 6 7 7是一个长度为8的完美数组。接下来两行每行n个数字,分别表示给定的两个数组。请问将这两个数组变成完美数组的最小代价是多少?删去数字时,无法改变其他数字的相对位置。输出一个数字,表示最小代价。原创 2024-02-05 19:48:02 · 649 阅读 · 0 评论 -
1137: 灯泡的高度(New Online Judge)
输入一个整数N和一个浮点数A(1原创 2024-02-05 17:14:36 · 162 阅读 · 0 评论 -
P1024 一元三次方程求解(洛谷)
一行,3 个实根,从小到大输出,并精确到小数点后 2 位。原创 2024-02-05 08:00:00 · 168 阅读 · 0 评论 -
1101: 花费(New Online Judge)
请把这些天分成M份(每份都是连续的天),则第i段的和为sum[i](i=1,2,…第一行为两个整数即N(1 ≤N≤100000)和M(1≤M≤N)已知修罗王和邪狼的逃亡天数为N,每天需要花的钱已经分配好。第二行为N个数,数字大小不超过10^9。求max{sum[i]}最小为多少?由于M原创 2024-02-04 21:24:08 · 207 阅读 · 0 评论 -
1100: 阶乘末尾0的个数(二)(New Online Judge)
相信你已经熟练掌握N!末尾的0的个数的求法。【如果不指导怎么求,建议先看 博客 1037: 阶乘末尾0的个数(一)(New Online Judge)】现在给出数字Q,请找到最小的N,使得N!输入一个整数Q(1原创 2024-02-04 16:38:09 · 205 阅读 · 0 评论 -
1618:最长重复子串(PIPIPOJ)
给定一个字符串,请你从中找出最长的一个子串,要求它在原字符串中至少出现2次。对于每组输入,输出最长重复子串的长度,若没有重复子串,输出0。每组输入一个字符串,字符串长度不超过1e5。ababa中aba是重复了2次的最长子串。asd中没有任何子串至少重复了2次。asa中a是重复了2次的最长子串。原创 2024-02-02 08:15:00 · 759 阅读 · 0 评论 -
1597: 数组查找(PIPIPOJ)
给定一个包含n个整数的升序序列和m个待查询的数字x,请你查找序列中x第一次出现的位置,如果不存在输出-1。第二行输入n个整数,代表序列的值,序列每个元素的值x满足(0原创 2024-01-27 17:07:33 · 482 阅读 · 2 评论