- 博客(4)
- 收藏
- 关注
原创 洛谷 P2678 [NOIP 2015 提高组] 跳石头
L/(n-m),所以可以二分出选择的最小间隔,并依次来卡石头的数。若直接贪心,则时间复杂度是n方,而这样就是nlogn。
2025-03-03 11:49:26
416
原创 洛谷P1049 装箱问题
注:不能直接记录min 因为每次从strat开始时的capacity都不同,所以只能记录可以使重量减小的最大值(最大值对应else中的if判断)。当然重量不能减小到0,所以使用时还有个大小判断(对应第一个if。用数组store[ ]记录 start-n中可以使重量减小的最大值,即 capacity(重量)减 min。注:arr记录了每个物品的价值,V / V-arr[1] 对应选/不选物品1的两种情况。将从1-n找V的最小值,分解为2-n找 V 或 V-arr[1] 的最小值。
2025-02-09 20:30:35
281
原创 洛谷 P1088 火星人
(使序列增大),且是比 i - 1大的数中最小的(只增大一点点):对应findmin()+1的操作即为改变排序,使新序列刚好比原序列大一点点(不能有大小在二者之间的序列)(4)将 i - 1后面的数( i 到 N)升序排列:对应bubblesort()(2)从 i - 1 后面的数( i 到 N)中 找比 i - 1大的数。(1)从后往前找第一个顺序的数:对应 bigger()的if判断,(3)交换 i - 1 与(2)中找到的数:对应swap()因为只改变个位、十位等,该序列增加的最少,所以从后开始找。
2025-02-06 19:33:06
394
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人