描述

有价值分别为1..6的大理石各a[1..6]块,现要将它们分成两部分,使得两部分价值之和相等,问是否可以实现。其中大理石的总数不超过20000。 

输入格式

有多组数据!
所以可能有多行
如果有0 0 0 0 0 0表示输入文件结束
其余的行为6个整数

输出格式

有多少行可行数据就有几行输出
如果划分成功,输出Can,否则Can't

测试样例1

输入

4 7 4 5 9 1 
9 8 1 7 2 4 
6 6 8 5 9 2 
1 6 6 1 0 7 
5 9 3 8 8 4 
0 0 0 0 0 0

输出

Can't 
Can 
Can't 
Can't 
Can

#include<cstdio>
#include<iostream>
#include<algorithm>
#include<cstring>
#include<string>
using namespace std;
const int maxn = 20505;
int n,sum,a[10],w[maxn];
bool f[maxn];
int main(){bool ok = true,ans = false;while(ok){ok = false;n = sum = 0;for(int i = 1;i <= 6;i++){scanf("%d",&a[i]);if(a[i]) ok = true;sum += a[i]*i;for(int j = 1;j <= a[i];j<<=1){w[++n] = j * i;a[i] -= j;}w[++n] = a[i] * i;}if(!ok) break;if(sum & 1){puts("Can't");continue;}memset(f,false,sizeof(f));f[0] = true;for(int i = 1;i <= n;i++){for(int j = sum >> 1;j >= w[i];j--){if(f[j - w[i]]) f[j] = true;}if(f[sum>>1]){ans = true;break;}}if(ans) puts("Can");else puts("Can't");}return 0;
}

转载于:https://www.cnblogs.com/hyfer/p/5754659.html

tyvj1194 划分大理石相关推荐

  1. 『多重背包的可达性问题』Coins划分大理石

    问题描述:coins Silverland的人们使用硬币.他们有价值A1,A2,A3的硬币-一个Silverland美元.有一天Tony打开他的钱箱,发现有一些硬币.他决定在附近的商店买一块非常漂亮的 ...

  2. 318. 划分大理石

    题目 有价值分别为1-6的大理石各a[1-6]块,现要将它们分成两部分,使得两部分价值之和相等,问是否可以实现. 其中大理石的总数不超过20000. 输入格式 输入包含多组数据! 每组数据占一行,包含 ...

  3. 《算法竞赛进阶指南》 0x50 动态规划

    题目后面加 ∗*∗ 表示题目过于简单或不具备特征性,不做题解 线性DP AcWing 271. 杨老师的照相排列 811人打卡 AcWing 272. 最长公共上升子序列 778人打卡(∗*∗) Ac ...

  4. 背包问题(01背包,完全背包,多重背包(朴素算法二进制优化))

    写在前面:我是一只蒟蒻~~~ 今天我们要讲讲动态规划中~~最最最最最~~~~简单~~的背包问题 1. 首先,我们先介绍一下  01背包 大家先看一下这道01背包的问题   题目   有m件物品和一个容 ...

  5. 【技巧总结】——DP

    DP 那些奇奇怪怪的dp LIS 二分法(nlogn)求 输出方案 LCS的巧妙想法 基础式子 计算方案 区间dp( n 3 n^3 n3) 线性dp 破环成链 递归型 转换对象 背包 普通背包 &q ...

  6. 为什么要划分物料组_SAP

    有个字段叫作物料组.物料组是干什么用的?是放在物料主数据里面的.放在物料主数据里面干什么用的?给物料分类用的.给物料分类又是干什么用的?是用来统计分析的.统计分析什么指标?-- 不要怪我问这么无厘头的 ...

  7. SAP License:为什么要划分物料组

    有个字段叫作物料组.物料组是干什么用的?是放在物料主数据里面的.放在物料主数据里面干什么用的?给物料分类用的.给物料分类又是干什么用的?是用来统计分析的.统计分析什么指标?-- 不要怪我问这么无厘头的 ...

  8. python中排序英文单词怎么写_Python实现对文件进行单词划分并去重排序操作示例...

    本文实例讲述了Python实现对文件进行单词划分并去重排序操作.,具体如下: 文件名:test1.txt 文件内容: But soft what light through yonder window ...

  9. train_test_split 数据集划分,样本划分

    在机器学习中,我们通常将原始数据按照比例分割为"测试集"和"训练集",通常使用sklearn.cross_validation里的train_test_spli ...

最新文章

  1. luoguP1354房间最短路问题
  2. 蓝桥杯 算法训练 数字三角形(最简单的DP)
  3. SAP Spartacus Org unit detail实例的单例特性
  4. Spring : Spring @Transactional事物创建
  5. 三大执业考试爆泄题丑闻 部分助考机构成泄题中介
  6. 华为交换机S5700系列配置通过STelnet登录设备示例
  7. 全面的C#编码规范整理
  8. MODIS数据下载及批处理
  9. exchange批量创建用户邮箱
  10. windows系统c++/VS2019编译gRPC
  11. 基于 图神经网络 + 知识图谱 的推荐系统 1
  12. 还在为图片转Excel而烦恼?6种转换方法让你3秒实现转换
  13. vue项目-android版本引入微信录音
  14. 金工如何运用计算机思维,金工的实习心得体会
  15. 哨兵2号(sentinel-2)介绍、下载和预处理、批处理
  16. 本地化部署大语言模型 ChatGLM
  17. PHP——四舍五入取整、向上取整、向下取整、小数截取
  18. 学习笔记(28):MATLAB基础入门课程-乘方运算
  19. canvas将图片转成点阵
  20. Python模块——base64

热门文章

  1. PL/SQL Developer将Excel表格数据导入表格
  2. npm安装任何包都报错的解决办法
  3. windows中启动 java -jar 后台运行程序
  4. The .NET Core runtime can be found at:(Windows)
  5. mysql-使用存储过程一次性批量创建多张表
  6. java同类型同字段名称对象赋值
  7. Idea svn 新文件自动添加到版本控制
  8. docker容器不支持中文编码
  9. Eclipse集成lombok插件 解决@Data标签get/set方法找不到异常
  10. 两个MYSQL数据同步的SHELL脚本