30分WA求助

P4053 [JSOI2007] 建筑抢修

~~自知此代码并不是用堆做的,思路可能有点问题~~ ------------ 但此蒟蒻不知道问题出在哪啊~(qwq) ------------ 大佬们帮调代码是能不能顺便给我说一下问题出在哪了……
by yuki2012 @ 2024-01-04 15:53:44


你贪心思路错了,你按 ```cpp bool cmp(building a,building b){ if(a.last==b.last) return a.need>b.need; else return a.last<b.last; } ``` 排,就一遍扫过去,不能保证你的答案是最优的。 我就举个反例: ```cpp 3 1 3 2 3 3 3 ``` 正确答案应是**2**,而你按修复排答案会是**1**,其他两个建筑在你排完之后就不能加了。 所以这个思路不行,你得重新写。。。
by wh__ @ 2024-01-29 10:46:02


你在循环中,如果时间占满了,就会忽略掉之后的解,所以。。。还是重写吧。。。
by wh__ @ 2024-01-29 10:54:10


|