砝码称重

来源:互联网 发布:淘宝地址怎么改邮编 编辑:程序博客网 时间:2024/04/28 03:35

独树一帜的sx做法。

#include <cstdio>#include <iostream>using namespace std;int dp[1100];int a[6100];int v[]={0,1,2,3,5,10,20};int main(){    int tot=0;    for(int i=1;i<=6;i++)    {        int x;        scanf("%d",&x);        for(int j=1;j<=x;j++)         a[++tot]=v[i];    }    dp[0]=1;    for(int i=1;i<=tot;i++)     for(int j=1000;j>=a[i];j--)      if(dp[j-a[i]])      dp[j]=1;    int ans=0;    for(int i=1;i<=1000;i++)      ans+=dp[i];    printf("Total=%d",ans);}
原创粉丝点击