zoukankan      html  css  js  c++  java
  • 蒟蒻吃药计划-治疗系列 #round5 采药+数字组合代码存放

     1 #include <bits/stdc++.h>
     2 #define fp(i,l,r) for(register int i=(l);i<=(r);++i)
     3 #define fd(i,l,r) for(register int i=(l);i>=(r);--i)
     4 using namespace std;
     5 inline int botposs(int a,int b,int pd){
     6     if(pd==1) return a>b?a:b;
     7     if(pd==0) return a>b?b:a;
     8 }
     9 int main(){
    10     int dp[10000+20],w[10000+20],c[10000+20];
    11     int n,v;
    12     scanf("%d%d",&v,&n);
    13     fp(i,1,n){
    14         scanf("%d%d",&c[i],&w[i]);
    15     }
    16     fp(i,1,v){
    17         dp[i]=0;
    18     }
    19     fp(i,1,n){
    20         fd(j,v,c[i]){
    21             dp[j]=botposs(dp[j],dp[j-c[i]]+w[i],1);
    22         }
    23     }
    24     printf("%d",dp[v]);
    25     return 0;
    26 }
    采药
     1 #include<bits/stdc++.h>
     2 #define fp(i,l,r) for(register int i=(l);i<=(r);++i)
     3 #define fd(i,l,r) for(register int i=(l);i>=(r);--i)
     4 using namespace std;
     5 int a,dp[1001];
     6 int n,m;
     7 int main(){
     8     scanf("%d%d",&n,&m);
     9     dp[0]=1;
    10     fp(i,1,n){
    11         scanf("%d",&a);
    12         fd(j,m,a){
    13             dp[j]+=dp[j-a];
    14         }
    15     }
    16     printf("%d",dp[m]);
    17     return 0;
    18 }
    数字组合
  • 相关阅读:
    常用地址
    三步搭建Spring Cloud 服务注册
    Java判断两个时间段是否有交集
    CentOS-7下安装docker
    linux 版菱形
    《少林问道》
    Linux下安装Nginx详细图解教程
    测试
    CentOS修改主机名和主机表
    虚拟机中CentOS配置静态网络
  • 原文地址:https://www.cnblogs.com/Fraction/p/BagTellingThree.html
Copyright © 2011-2022 走看看