P5194 [USACO05DEC]Scales S

思路
其实还是一知半解 用前缀和优化的DFS 先做个前缀和 然后每次找一个数,如果这个数前面所有的数加上这个数都可以取,就直接取 不行的话就在这个数的前面找数,然后判断能否全部取走,能取走就取走,然后得到最大值,然后最终是用不可以取走所有前面的情况下在从前面重新开始枚举。 还不太懂,但要是可以把这题搞懂,对搜索水平会有很大的提升!
代码
#include
#define int long long
using namespace std;
int n, c;
const int N = 10005;
int a[N], sum[N];
int ans = 0;

void dfs(int cnt, int x)
{
if (x > c)
{
return;
}
if (sum[cnt - 1] + x <= c) { ans = max(ans, sum

P5194 [USACO05DEC]Scales S最先出现在Python成神之路

版权声明:
作者:dingding
链接:https://www.techfm.club/p/12655.html
来源:TechFM
文章版权归作者所有,未经允许请勿转载。

THE END
分享
二维码
< <上一篇
下一篇>>