不会dp的蒟蒻写dfs了

Miku

--------------------------------

这道题完全可以用dfs做啊

--------------------------------

不剪枝60,剪枝100

---------------------------------

 1 #include<iostream>
 2 #include<cstdio>
 3 #include<cstring>
 4 using namespace std;
 5 int c[1001];
 6 int ans;
 7 int n,ma,be;
 8 int mm[100][10001];
 9 void dfs(int st,int now){
10     if(now<0||now>ma)
11         return ;
12     if(mm[st][now])
13     return ;
14     else
15     mm[st][now]=1;
16     if(st==n+1){
17         ans=max(ans,now);
18         return ;
19     }
20     dfs(st+1,now+c[st]);
21     dfs(st+1,now-c[st]);
22 }
23 int main(){
24     cin>>n>>be>>ma;
25     for(int i=1;i<=n;++i)
26         cin>>c[i];
27     ans=-1;
28     dfs(1,be);
29     cout<<ans;
30     return 0;
31 } 
Ac

相关文章:

  • 2021-07-01
  • 2021-12-29
  • 2022-12-23
  • 2021-06-25
  • 2021-07-21
  • 2021-09-06
  • 2021-07-16
  • 2021-12-25
猜你喜欢
  • 2021-09-27
  • 2022-01-31
  • 2022-12-23
  • 2021-12-23
  • 2021-05-31
相关资源
相似解决方案