洛谷P1164->小A点菜

Hello,大家好

又到了人民群众喜闻乐见的博客分享时间

今天我们要讲的是:

洛谷P1164:小A点菜

 

 

 

 

(图片截图自洛谷,侵权请于30日内联系删除)

 

这道题……

转移方程写错了我就没辙了

只需要……

 1 #include<iostream>
 2 #include<cstring>
 3 #include<algorithm>
 4 using namespace std;
 5 int a[101],f[101][10001]={0};
 6 int main()
 7 {
 8     int n,m;
 9     cin>>n>>m;
10     for(int i=1;i<=n;i++)
11     {
12         cin>>a[i];
13     }
14     for(int i=1;i<=n;i++)
15     {
16         for(int j=1;j<=m;j++)
17         {
18             if(j==a[i])
19             {
20                 f[i][j]=f[i-1][j]+1;
21             }
22             if(j>a[i]) 
23             {
24                 f[i][j]=f[i-1][j]+f[i-1][j-a[i]];
25             }
26             if(j<a[i]) 
27             {
28                 f[i][j]=f[i-1][j];
29             }
30         }
31     }      
32     cout<<f[n][m];
33     return 0;
34 }

好了,解决了

这道题的转移方程在三种情况下都各不同

所以如果搞乱……

拜了个拜

 

原文地址:https://www.cnblogs.com/wwLucas-Blog-Welcome/p/12911340.html