PAT 2-09. 装箱问题模拟(20)
题目链接 :http://www.patest.cn/contests/ds/2-09
解题思路:直接模拟, 记录已经使用的箱子的剩余容量, 如果已经使用的箱子中没有可以放下物品的箱子, 在增加另一个箱子. 最坏情况下N的箱子都要使用, 不会有N个箱子都不够用的情况(i.e. 其中si为满足1<= si<=100的整数).
代码如下(有注释):
#include<iostream>
using namespace std; int leave[1005];//记录每个箱子的剩余量,初始为100(最多有1000个箱子) int main()
{
int n;
cin>>n;
for(int i=1;i<=n;i++)
{
leave[i]=100;
}
int temp,cnt=1,flag;
cin>>temp;
leave[1]-=temp;
cout<<temp<<" "<<1<<endl;
for(int i=2;i<=n;i++)
{
flag=1;//flag记录是否需要增加箱子,初始时假设需要增加
cin>>temp;
for(int j=1;j<=cnt;j++)
{
if(leave[j]>=temp)
{
leave[j]-=temp;
cout<<temp<<" "<<j<<endl;
flag=0;
break;
}
}
if(flag)//如果需要增加
{
cnt++;
leave[cnt]-=temp;
cout<<temp<<" "<<cnt<<endl;
}
}
cout<<cnt<<endl;
return 0;
}
PAT 2-09. 装箱问题模拟(20)的更多相关文章
- PAT 乙级 1007. 素数对猜想 (20) c++ 筛选法求素数
PAT 乙级 1007. 素数对猜想 (20) c++ 筛选法求素数 让我们定义 dn 为:dn = pn+1 - pn,其中 pi 是第i个素数.显然有 d1=1 且对于n>1有 dn 是偶数 ...
- PAT乙级:1088 三人行 (20分)
PAT乙级:1088 三人行 (20分) 题干 子曰:"三人行,必有我师焉.择其善者而从之,其不善者而改之." 本题给定甲.乙.丙三个人的能力值关系为:甲的能力值确定是 2 位正整 ...
- PAT乙级:1064 朋友数 (20分)
PAT乙级:1064 朋友数 (20分) 题干 如果两个整数各位数字的和是一样的,则被称为是"朋友数",而那个公共的和就是它们的"朋友证号".例如 123 和 ...
- PAT 1024 科学计数法 (20)(精简版代码+思路+推荐测试样例)
1024 科学计数法 (20)(20 分) 科学计数法是科学家用来表示很大或很小的数字的一种方便的方法,其满足正则表达式[+-][1-9]"."[0-9]+E[+-][0-9]+, ...
- PAT 1023 组个最小数 (20)(代码+思路)
1023 组个最小数 (20)(20 分) 给定数字0-9各若干个.你可以以任意顺序排列这些数字,但必须全部使用.目标是使得最后得到的数尽可能小(注意0不能做首位).例如:给定两个0,两个1,三个5, ...
- pat 1074. 宇宙无敌加法器(20)
1074. 宇宙无敌加法器(20) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CHEN, Yue 地球人习惯使用十进制数,并且默 ...
- PAT乙级 1029. 旧键盘(20)
1029. 旧键盘(20) 时间限制 200 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CHEN, Yue 旧键盘上坏了几个键,于是在敲一段文字的 ...
- PAT乙级 1028. 人口普查(20)
1028. 人口普查(20) 时间限制 200 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CHEN, Yue 某城镇进行人口普查,得到了全体居民的 ...
- PAT乙级 1009. 说反话 (20)
1009. 说反话 (20) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CHEN, Yue 给定一句英语,要求你编写程序,将句中 ...
随机推荐
- Nginx配置多个域名指向不同的端口
一.前言 很多时候我们都会在同一个服务器上部署多个项目,我们有多个域名的情况下,怎么样使不同的域名都通过80端口来访问呢?打个比方说,现在有2个域名,分别是:tessai.cn 和 admin.tes ...
- Git 撤销更改
一.未使用 git add 缓存代码时 可以使用 git checkout -- filepathname (比如: git checkout -- readme.md ,不要忘记中间的 “--” ...
- 水题----根据O出现次数判断分数
There is an objective test result such as \OOXXOXXOOO". An `O' means a correct answer of a prob ...
- AttributeError: module 'time' has no attribute 'clock'
在python3.8中flask项目运行报错: AttributeError: module 'time' has no attribute 'clock'解决方案 主要原因是因为python3.8中 ...
- sourceTree安装、跳过bitbucket注册免登陆方法
下载好以后,点击安装运行,会出现下面这个窗口 关掉这个窗口,打开C:\Users\{users}\AppData\Local\Atlassian\SourceTree(users是计算机的名字),新建 ...
- macOS 遇到 svnadmin无法使用的情况
首先,我在网上查了很多资料,大多数开发者都是表明了mac内置svn,然后直接使用svnadmin来创建仓库,但是我用命令行敲入svnadmin却显示找不到svnadmin.最开始,有个资料说用whic ...
- SELECT within SELECT Tutorial -- SQLZOO
SELECT within SELECT Tutorial 注意:where语句中对表示条件的需要用单引号, 下面的译文使用的是有道翻译如有不正确,请直接投诉有道 01.List each count ...
- 网络安全 - SSL/TLS协议运行机制的概述
大学时也系统学过相关的网络安全,但那时并没有理论联系实践,稀里糊涂的,现在才意识到所学的东西都是好东西,可惜已晚. 来自http://www.ruanyifeng.com/blog/2014/02/s ...
- 错误记录:MIME type may not contain reserved characters
最近遇到个问题,随手记录一下! 新做了一个项目,要通过HTTP请求发送ZIP文件到OSS平台,但上传过程中,总是出现下面错误提示: 初步判定,应该是包冲突原因!于是,分析MIME-TYPE获取源码发现 ...
- Windows环境编译Spark源码
一.下载源码包 1. 下载地址有官网和github: http://spark.apache.org/downloads.html https://github.com/apache/spark Li ...