首页 > 代码库 > XidianOJ 1073 Nunchakus
XidianOJ 1073 Nunchakus
题目描述
输入
输出
--正文
和宝藏分配差不多的思路,直接就这么写了,不过应该有更好的思路
#include <iostream> #include <cstdio> #include <cstring> #include <algorithm> #include <queue> #include <vector> using namespace std; int f[10001]; int main(){ int time,T; scanf("%d",&T); for (time=1;time<=T;time++){ int n,i,j; int L[101],sum = 0; scanf("%d",&n); for (i=1;i<=n;i++){ scanf("%d",&L[i]); sum += L[i]; } int SIZE = sum / 2; memset(f,0,sizeof(f)); for (i=1;i<=n;i++){ for (j=SIZE;j>=L[i];j--){ f[j] = max(f[j-L[i]]+L[i],f[j]); } } int res = sum - 2*f[SIZE]; // printf("%d %d\n",sum,f[SIZE]); if (res != 0) { printf("No\n"); } else { printf("Yes\n"); } } return 0; }
XidianOJ 1073 Nunchakus
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。