博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
2015安徽省赛 F.多重部分和问题
阅读量:5255 次
发布时间:2019-06-14

本文共 1126 字,大约阅读时间需要 3 分钟。

题目描述

有n种不同大小的数字,每种各个。判断是否可以从这些数字之中选出若干使它们的和恰好为K。

输入

首先是一个正整数T(1<=T<=100) 接下来是T组数据 每组数据第一行是一个正整数n(1<=n<=100),表示有n种不同大小的数字 第二行是n个不同大小的正整数ai(1<=ai<=100000) 第三行是n个正整数mi(1<=mi<=100000),表示每种数字有mi个 第四行是一个正整数K(1<=K<=100000)

输出

对于每组数据,如果能从这些数字中选出若干使它们的和恰好为K,则输出“Yes”,否则输出“No”,每个输出单独占一行

样例输入

2
3
3 5 8 3 2 2
17
2
1 2 1 1
4

样例输出

Yes
No
dp数组
#include 
#include
#include
using namespace std;int dp[100001],a[100001],m[100001];int n,k,T;int dper(){ memset(dp,-1,sizeof(dp)); dp[0]=0; for(int i=0;i
=0) { dp[j]=m[i]; } else if(j
<=0) { dp[j]=-1; } else { dp[j]=dp[j-a[i]]-1; } } } if(dp[k]>=0){printf("Yes\n");} else printf("No\n"); return 0;}int main(){ scanf("%d",&T); while(T>=1) { scanf("%d",&n); for(int i=0;i
View Code

 

 

 

转载于:https://www.cnblogs.com/dzzy/p/4692694.html

你可能感兴趣的文章
5.3下午
查看>>
设计模式--单一职责原则
查看>>
Java提高篇——equals()与hashCode()方法详解
查看>>
面向对象编程(十二)——final关键字
查看>>
CentOS搭建FTP服务
查看>>
开博第一天
查看>>
C/C++中的绝对值函数
查看>>
spring集成jedis简单实例
查看>>
Redis
查看>>
第一阶段冲刺第八天
查看>>
css变换与动画详解
查看>>
个人项目-小学四则运算 “软件”之初版
查看>>
Ubuntu 17.04下创建IntelliJ IDEA图标快捷方式
查看>>
StringTokenizer实现字符串分割
查看>>
在Android系统中调用系统前置摄像头
查看>>
hdu 3549 Flow Problem Edmonds_Karp算法求解最大流
查看>>
hdu 5769 Substring 后缀数组 + KMP
查看>>
springmvc代码执行流程
查看>>
Spring Boot学习(四)
查看>>
Java NIO与IO的详细区别(通俗篇)
查看>>