代码虽然写的有点乱,但是还是过了哈哈。

主要就是模拟题目那个意思,仔细点就好了。

#include <iostream>
#include <malloc.h>
#include <cstdio>
#include <algorithm>
#include <queue>
#include <stack>
#include <cmath>
#include <map>
#include <cstring>
#define IO                       \ios::sync_with_stdio(false); \cin.tie(0);                  \cout.tie(0);
using namespace std;
typedef long long LL;
int dis[4][2] = {0, 1, 1, 0, 0, -1, -1, 0};
const int maxn = 500000 + 10;
// const LL mod = 998244353;
const int inf = 0x3f3f3f3f;
int a[maxn];
int main()
{
#ifdef ONLINE_JUDGE
#elsefreopen("in.txt", "r", stdin);// freopen("out.txt", "w", stdout);
#endifIO;int n, m, k;cin >> n >> m >> k;while (k--){for (int i = 1; i <= n; i++)cin >> a[i];int flag = 0;stack<int> s1; // 货柜序列stack<int> s;  // 瓶子int i = 1;     //  指向货物序列int p = 1;     // 表示当前应该放进的 序号while (p <= n){if (i <= n){if (a[i] == p) // 若当前颜色可以直接放入瓶子那么 放进去{++p;++i;}}if (!s1.empty() && s1.top() == p){s1.pop(); // 临时货架栈顶可以直接放到瓶子里++p;}else if (!s1.empty() && s1.top() != p && i == n + 1){flag = 1; // 货物已经运输完毕 但是 临时货架上栈顶并不能放到瓶子里break;}else if (i <= n){if (a[i] == p) // 可能会出现先把临时货架上的拿下才能将货物序列送来的放入瓶子{              // 这个地方 一开始忘了++p;++i;}else{s1.push(a[i]); // 送来的放不进去瓶子 那么放到临时货架上++i;}if (s1.size() > m) // 超出临时货架容量{flag = 1;break;}}}if (flag)cout << "NO" << endl;elsecout << "YES" << endl;}return 0;
}

L2-4 彩虹瓶 (25分) 栈的运用相关推荐

  1. 一起开心2020蓝桥寒假训练(二)7-6 彩虹瓶 (25分)用到栈,队列

    一起开心2020蓝桥寒假训练(二)7-6 彩虹瓶 (25分) 彩虹瓶的制作过程(并不)是这样的:先把一大批空瓶铺放在装填场地上,然后按照一定的顺序将每种颜色的小球均匀撒到这批瓶子里. 假设彩虹瓶里要按 ...

  2. 天梯赛 L2-032 彩虹瓶 (25 分)

    L2-032 彩虹瓶 (25 分) 思路: 读完题目就知道是用栈处理, 值得注意的是 1 while (s.size() && s.top() == d)中,要先判断栈的大小,再判断栈 ...

  3. L2-032 彩虹瓶 (25分)(C语言)

    L2-032 彩虹瓶 (25分) 彩虹瓶的制作过程(并不)是这样的:先把一大批空瓶铺放在装填场地上,然后按照一定的顺序将每种颜色的小球均匀撒到这批瓶子里. 假设彩虹瓶里要按顺序装 N 种颜色的小球(不 ...

  4. 【栈】L2-032 彩虹瓶 (25分)

    假设彩虹瓶里要按顺序装 N 种颜色的小球(不妨将顺序就编号为 1 到 N).现在工厂里有每种颜色的小球各一箱,工人需要一箱一箱地将小球从工厂里搬到装填场地.如果搬来的这箱小球正好是可以装填的颜色,就直 ...

  5. 团体程序设计天梯赛-练习集——7-10 彩虹瓶 (25分)

    彩虹瓶的制作过程(并不)是这样的:先把一大批空瓶铺放在装填场地上,然后按照一定的顺序将每种颜色的小球均匀撒到这批瓶子里. 假设彩虹瓶里要按顺序装 N 种颜色的小球(不妨将顺序就编号为 1 到 N).现 ...

  6. L2-4 彩虹瓶 (25 分)-2019天梯赛全国总决赛

    彩虹瓶的制作过程(并不)是这样的:先把一大批空瓶铺放在装填场地上,然后按照一定的顺序将每种颜色的小球均匀撒到这批瓶子里. 假设彩虹瓶里要按顺序装 N 种颜色的小球(不妨将顺序就编号为 1 到 N).现 ...

  7. PTA(2019年天梯赛-全国总决赛)----彩虹瓶 (25分)

    旧人旧事更值得怀念,或悲或喜每个人身上都承载着某一段时光,但是我会永远清澈永远疯狂永远浪漫.没有人能回到过去重新活过,但你我都可以从现在开始,决定我们未来的模样.                    ...

  8. 彩虹瓶 (25 分)

    彩虹瓶的制作过程(并不)是这样的:先把一大批空瓶铺放在装填场地上,然后按照一定的顺序将每种颜色的小球均匀撒到这批瓶子里. 假设彩虹瓶里要按顺序装 N 种颜色的小球(不妨将顺序就编号为 1 到 N).现 ...

  9. PTA 彩虹瓶 (25分)

    问题描述: 彩虹瓶的制作过程(并不)是这样的:先把一大批空瓶铺放在装填场地上,然后按照一定的顺序将每种颜色的小球均匀撒到这批瓶子里. 假设彩虹瓶里要按顺序装 N 种颜色的小球(不妨将顺序就编号为 1 ...

最新文章

  1. 内蒙十二地市的称谓对应关系
  2. ThinkPHP导入第三方类库Vendor
  3. 华为防火墙USG基本配置
  4. 【转】js之iframe子页面与父页面通信
  5. Java中的List/Set和Map的区别
  6. leetcode 290. 单词规律(Java版)
  7. py2exe打包pyqt程序
  8. java 关于日期的操作
  9. 雷军这么努力,为什么还是干不过 OV?
  10. php连接postgresql数据库
  11. 无人机巡检系统设想路线
  12. android 浏览器上传图片,Android 开发 使用WebUploader解决安卓微信浏览器上传图片中遇到的bug...
  13. 五个顶级的大数据架构
  14. win7 设置 快速启动栏
  15. SpringBoot+OAuth2+Google关联登录
  16. LabVIEW——波形图总结
  17. php系统5000块钱的短信,两天被刷完了,短信接口被恶意盗刷怎么办?(短信接口被盗刷系列4)
  18. VMware vSphere(三)update management
  19. matlab字符模板在哪,新人求助!车牌识别系统里的字符模版存放路径是哪里
  20. MyBatis(3)

热门文章

  1. UDT协议解析及C/C++代码实现
  2. 查找badiexit
  3. python右键idel消失问题
  4. 基于卡方的独立性检验
  5. 各种Excel VBA的命令
  6. 打包带走极客时间大数据课程的正确姿势
  7. (手机拍照)4、修图软件
  8. Kotlin版 极简 干货集中营 APP
  9. 如何投影一个纹理 (翻译:心蓝 潘李亮)
  10. 暗角教程,如何加镜头晕影暗角效果