- 博客(6)
- 收藏
- 关注
原创 YTU2362愚公的遗愿
一开始的思路是分别求两个人背的石头,然后让差最小,然后发现很难写出来;上网看了题解毛色顿开,这还是一个0-1背包问题。只要求哥哥背的,最后用总共的减掉哥哥的就是弟弟背的;因为x<=y,所以哥哥要背的不超过sum/2但是接近一半。我们只需要把哥哥的0-1背包的最大容量设为sum/2即可。做的时候出现了多次运行错误,最终发现是f[]数组应该开大一些,注意这些小细节!: 段错误,检查是否有数组越界,指针异常,访问到不应该访问的内存区域。
2024-06-16 16:07:08 493
原创 YTU2413 C 语言习题 折半查找
注意:数组空间为 1000000和 查询次数为100000。比cin和cout快)可以去查相关资料。二分思想(和上篇用到的思想一致)
2024-06-07 17:16:33 243
原创 YTU3332二分查找
1)key<mid 说明目标在数组的左半部分,把右端right改为mid-1,再从0到mid-1(左半部分)重新搜;2)key>mid 说明目标在数组的右半部分,把左端left改为mid+1;再从mid+1到n重新搜;2.二分即为从中间一分为二,取mid=(left+right)/2;3)key=mid说明找到目标了;二分查找的优点:将时间复杂度O(n) 降低到O(logn)1.范围【left,right】数组的左端和右端。3.将需要寻找的目标key与mid比较。先将数组按从小到大的顺序排序。
2024-06-07 16:47:07 342
原创 YTU2461假回家看电视
思想:每个电视节目包括开始时间s和结束时间e,所以采用结构体进行存储。尽可能选结束时间较早的(因为一天中结束时间越早才能有更多时间看下一个节目)。所以对结束时间a[i].e从小到大排序,采用上篇文章的‘“撞车”思想(即两段时间不能重复,ans++;总结:本道题是采用了贪心策略,一道简单的贪心(建议自己看完题解独立进行解题)
2024-06-04 18:21:01 191
原创 YTU1757区间相交问题
3.从第一段的右端点开始比,目的是让每一段不重复。所以用第i个的左端点跟第i-1个的右端点比较,避免“撞车”(把每一段看作一辆车,车不能重叠,只能从前往后排队行驶),如果未撞车,不重复的区间ans++;最后求的是去掉的即n-ans;1.先将区间端点排序,使右端点大于左端点。2.对右端点进行从小到大的排序。本道题是采用贪心算法策略。
2024-06-03 18:08:30 170 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人