90分求助

P1833 樱花

你没有处理pi==0的情况
by xiaoxiao090104 @ 2023-09-03 23:09:22


你需要在pi为0时赋一个较大值(如99999),但是普通的多重背包时间应该会被卡最后一个点,所以要二进制优化,题解里面写的很清楚
by xiaoxiao090104 @ 2023-09-03 23:14:30


并且在你这种写法里面 ```cpp while(P!=0&&j-(p[i]-P)*t[i]>=0); ``` 应改为 ```cpp while(P>=0&&j-(p[i]-P)*t[i]>=0); ```
by xiaoxiao090104 @ 2023-09-03 23:16:13


否则只有40pts
by xiaoxiao090104 @ 2023-09-03 23:17:31


@[xiaoxiao090104](/user/699471) 代码里的do while循环以及条件中的P!=0就是为了使pi为0时这个循环可以一直进行下去的呀qwq。
by Purple_meteor @ 2023-09-08 22:55:06


@[xiaoxiao090104](/user/699471) 突然反应过来,现在已经过了,感谢大佬指点
by Purple_meteor @ 2023-09-08 23:04:30


@[Pzm20070925](/user/1043658) 不是大佬o
by xiaoxiao090104 @ 2023-09-09 22:56:28


|