5 条题解

  • -1
    @ 2024-3-18 22:01:35
    #include <bits/stdc++.h>
    using namespace std;
    long long f[10010],n,m,v;
    int main(){
    	ios::sync_with_stdio(false);
    	cin.tie(0);cout.tie(0);
    	cin>>n>>m;
    	f[0]=1;
    	for (int i=1;i<=n;i++){
    		cin>>v;
    		for (int j=m;j>=v;j--)f[j]=f[j]+f[j-v];
    	}
    	cout<<f[m]; 
    	return 0;
    }
    
    • -1
      @ 2022-12-23 19:42:24

      警告

      答案范围并不在int内,一定要使用long long!!!

      • @ 2022-12-27 15:46:59

        "听我说屑屑你,因为油腻,温暖了死寂 · · · · · ·"

    • -1
      @ 2022-8-29 17:13:14

      本题运用01背包,因为每个数只有选或不选两种选择,所以不选的方案数就是f[j],选就是f[j - v[i]]则状态转移方程为f[j]=f[j]+f[j-v[i]]。 代码如下所示:

      #include<bits/stdc++.h>
      using namespace std;
      int n, m, v[105], f[10005];
      int main()
      {
      	cin >> n >> m;
      	for (int i = 1; i <= n; i++)
      		cin >> v[i];
      	f[0] = 1;
      	for (int i = 1; i <= n; i++)
      		for (int j = m; j >= v[i]; j--)
      			f[j] = f[j] + f[j - v[i]];
      	cout << f[m];
          return 0;
      }
      
      • @ 2023-2-3 12:38:44

        错误答案,请勿倾信。

      • @ 2023-2-3 12:41:33

        int要改long long

        #include<bits/stdc++.h>
        using namespace std;
        long long n, m, v[105], f[10005];
        int main()
        {
        	cin >> n >> m;
        	for (int i = 1; i <= n; i++)
        		cin >> v[i];
        	f[0] = 1;
        	for (int i = 1; i <= n; i++)
        		for (int j = m; j >= v[i]; j--)
        			f[j] = f[j] + f[j - v[i]];
        	cout << f[m];
            return 0;
        }
        
      • @ 2023-2-3 12:42:00

        这是正确代码

    • -2
      @ 2023-2-6 15:33:03

      写题解请注意

      鼓励大家写题解,但注意题解格式。

      题解一定要有思路解析或代码注释,能否让别人理解你的思路

      也是你的能力的检验,不要只放无意义的代码给大家复制,那就失去了做题的初心。

      给代码两端加上这个会舒服一些

      ```cpp

      你的代码

      ```

      </span>

      这个点在键盘的左上角tab上面那个键,注意切换输入法

      #include<iostream>
      using namespace std;
      int main()
      {
          int n;
          cin>>n;//这是一个注释
          return 0;
      }
      

      请注意严禁抄袭题解,写题解不要只放代码,需加上你的思路或代码注释。

      抄袭题解一经发现直接取消成绩。

      题解被删除的可能

      1. 代码不符合格式规范
      2. 没有思路讲解或者没有注释,
      3. 无意义的题解

      大家携手共同维护一个良好的编程环境,如果一经发现,多次作乱。可能会被管理员拉黑,请注意,一旦拉黑即失去登陆资格。

      • -5
        @ 2022-9-23 6:10:44

        • 1

        信息

        ID
        2025
        时间
        1000ms
        内存
        256MiB
        难度
        7
        标签
        (无)
        递交数
        186
        已通过
        41
        上传者