[PAT][1014] Waiting in Line

UE4 - 河流流体插件Fluid Flux Fluid Flux可以模拟一定区域内的流体效果,由于使用顶视图所Capture的Heightfield信息,所以只支持室外开阔场景,不支持洞穴等室内场景; 阅读详情

题目链接:http://pat.zju.edu.cn/contests/pat-practise/1014

思路:由于等待队列已经确定,那么等待队列中的客户接受服务的窗口随之确定。根据这个思路,完全无视黄线的存在,把所有客户都插入到应该排队的队列,这样就可以计算出每个客户的接受服务时间和结束服务时间。

步骤:

  1. 先把n * m个客户拍到黄线内。
  2. 对剩下的客户,从等待顺序开始,为客户C找到正在服务的客户最早退出队列的窗口W。
  3. 把客户插入到窗口W,并更新窗口W的黄线内最后一个客户结束服务时间(Windows.fFime),正在服务客户。
  4. 更新客户C的开始服务时间和结束服务时间。
  5. 最后计算要求查询的客户的开始服务时间。

代码:

#include <iostream>
#include <stdio.h>
#include <queue>
#define	INF	0x6fffffff
using namespace std;

struct Customer
{
	int pTime, sTime, fTime;//所需服务时间,开始服务时间,结束服务时间
};

struct Window
{
	int ftime;//窗口黄线以内最后一个客户的服务接受时间
	queue <int> q;//在窗口排队的客户,队列中是当天所有在该窗口接受服务的客户,不仅仅是黄线以内的客户
};

Customer cus[1005];
Window wins[25];
const int seventeen = 17 * 60;//17:00
const int eight = 8 * 60;

int main()
{
	int n, m, k, q, ii, jj, mTime, fro, pos, hour, min, que;

	scanf("%d %d %d %d", &n, &m, &k, &q);

	for(ii = 1; ii <= k; ii++)
	{
		scanf("%d", &cus[ii].pTime);
	}
	//把前n * m个客户插入黄线以内
	for(ii = 1, jj = 0; ii <= n * m && ii <= k; ii++)
	{
		cus[ii].fTime = wins[jj].ftime + cus[ii].pTime;//
		cus[ii].sTime = wins[jj].ftime;
		wins[jj].ftime += cus[ii].pTime;
		wins[jj].q.push(ii);
		jj = (jj + 1) % n;
	}
	//把剩下的客户插入到该进的窗口队列
	for(; ii <= k; ii++)
	{
		mTime = INF;
		//遍历所有窗口,找到最先结束服务的客户所在的窗口
		for(jj = 0; jj < n; jj++)
		{
			fro = wins[jj].q.front();
			if(cus[fro].fTime < mTime)
			{
				mTime = cus[fro].fTime;
				pos = jj;
			}
		}
		cus[ii].fTime = wins[pos].ftime + cus[ii].pTime;
		cus[ii].sTime = wins[pos].ftime;
		wins[pos].ftime += cus[ii].pTime;
		wins[pos].q.push(ii);
		wins[pos].q.pop();
	}
	
	while(q--)
	{
		scanf("%d", &que);
		if(cus[que].sTime + eight >= seventeen)
			printf("Sorry\n");
		else
		{
			hour = (cus[que].fTime + eight) / 60;
			min = (cus[que].fTime + eight) % 60;

			hour >= 10 ? printf("%d:", hour) : printf("0%d:", hour);
			min >= 10 ? printf("%d\n", min) : printf("0%d\n", min);
		}
	}
	return 0;
}


备注:网上也有每过一秒计算一次窗口队列的代码。

医疗数据采集:Python爬虫爬取医学文献与药品信息(2026合规与伦理版) 医疗数据采集不同于爬取新闻或房价,它直接关系到人的生命健康和法律底线。技术层面:优先使用官方 API (PubMed E-utilities, BioThings),避免解析复杂HTML。法律层面:严守“不碰隐私、不破付费、不传谣言”三条红线。伦理层面:保持对生命的敬畏,确保数据的准确性和用途的正当性。在2026年,一个优秀的医疗数据工程师,不是那个能爬取最多数据的人,而是那个能在合规框架下,利用公开数据解决真实医疗问题的人。请务必珍视您的职业生涯和法律责任,切勿以身试法。 阅读详情

相关推荐

Nengo神经工程框架:脉冲神经网络的实时编译与硬件部署

脉冲神经网络(SNN)作为类脑计算的核心范式,正从生物模拟走向工程落地。其本质是用离散脉冲建模神经动力学,关键在于实现可预测、可复现的神经行为而非单纯拟合函数。Nengo基于神经工程学框架(NEF),将动态系统理论与硬件约束深度融合,通过解析式权重计算、确定性时间步长(dt)和多后端编译能力,支撑从CPU仿真到Loihi/FPGA的端到端部署。它不替代深度学习框架,而是提供面向神经形态芯片的‘神经编译器’能力,使LIF神经元参数、突触动力学与硬件时序严格对齐,显著提升实时性、能效比与物理可解释性。

weixin_32533659的博客 638

PAT1014 辛苦调试至满分的血泪史QAQ

PAT1014 辛苦调试至满分的血泪史QAQ //需要特殊验证的两组数:3485djDkxh4hhG9 2984akDfkkkkgg9dsb s&amp;amp;hgsfdk d&amp;amp;Hyscvnm // 3485djDkxh4hhGA 2984akDfkkkkggAdsb s&amp;amp;hgsfdk d&amp;amp;Hyscvnm #include&amp;lt;s...

qq_41243427的博客 983

有史以来最小的GIF/png/jpg/jpeg

昨天我对图像进行了 base64 编码,这样我就可以将它发送到 CouchDB 以测试我正在为客户编写的一些代码。它让我想起了我之前在远程服务器上设置 cookie 时所做的事情。基本上,一个小的 PHP 脚本被放在远程服务器上,它接受几个 GET 参数并根据它们的值设置一些 cookie。然后脚本输出一个 1x1 的透明 GIF。本地服务器上的 PHP 脚本生成了一个 IMG 标签,该标签链接到该图像并根据本地服务器上的 COOKIES 设置参数。

凌凌1301的博客 1417

浙江大学PAT上机题解析之1014. 福尔摩斯的约会 (20)

1014. 福尔摩斯的约会 (20) 时间限制 50 ms 内存限制 32000 kB 代码长度限制 8000 B 判题程序 Standard 作者 CHEN, Yue 大侦探福尔摩斯接到一张奇怪的字条:“我们约会吧! 3485djDkxh4hhGE 298...

weixin_30896511的博客 545

麒麟操作系统安装达梦数据库ARM版

Linux安装达梦数据库ARM版

运维@小兵的博客 8770

Pywinauto与Inspect.exe完美搭配:解决Windows应用UI自动化中的元素定位难题

本文详细介绍了如何将Pywinauto与Inspect.exe结合,以解决Windows应用UI自动化中的核心难题——元素定位。通过实战指南,阐述了如何利用Inspect.exe在UIA模式下精准侦察控件属性,并将这些信息转化为Pywinauto的稳健定位策略,从而高效自动化WPF、WinForms等现代框架构建的复杂桌面应用。

weixin_29297127的博客 520

PAT A1014:Waiting in Line

题目描述 1014 Waiting in Line (30分) Suppose a bank has N windows open for service. There is a yellow line in front of the windows which devides the waiting area into two parts. The rules for the customers...

lilian的博客 333

SDRAM控制器——添加读写FIFO

用FIFO实现数据缓存

H19981118的博客 2627

1014 Waiting in Line 队列操作

题目 题目链接:1014 Waiting in Line (PAT (Advanced Level) Practice) 输入样例 2 2 7 5 1 2 6 4 3 534 2 3 4 5 6 7 输出样例 08:07 08:06 08:10 17:00 Sorry 提交结果截图 带详细注释的源代码 代码参考了博文——PTA 1014 Waiting in Line (30分) 解题思路及满分代码 #include <iostream> #include .

NOT_TODAY1的博客 572

22、狭义相对论与曲线坐标空间相关知识解析

本文深入解析了狭义相对论与曲线坐标空间的核心概念,涵盖能量-动量张量的定义与守恒、曲线坐标系下的度量张量与基向量性质、协变与逆变张量的变换规则,并介绍了克里斯托费尔符号与协变导数的计算方法。进一步探讨了在弯曲空间中进行微积分运算的基础理论及其在广义相对论中的关键应用,如爱因斯坦场方程如何描述物质-能量对时空曲率的影响,为理解黑洞等引力现象提供了理论框架。

lambda的博客 116

电子科技大学计算机预推免(最终去向)

电子科技大学,预推免报名时必须要有一封本校老师写的推荐信,推荐信基本上就是复试的入场券,所以一定要提前联系老师,拿到推荐信。只要有机会进了面试,我觉得老师对于双非并不歧视,面试的个人表现才是关键性决定因素,技巧性也是很强的,如果有需要帮助的,欢迎私信~~

D1379951481的博客 3368

1014 Waiting in Line

就是给出的顾客服务时间,动态模拟每个顾客结束的时间,不过需要考虑的因素很多,有很多窗口,还有线外线内等。

hlp_whale的博客 239

华为HCIE之TS部分整理

TroubleShooting 整体拓扑 1. MSTP 题目需求:site1 中,CLIENT1 属于 VLAN12,CLIENT3 属于 VLAN34;MSTP 中的 VLAN12 属于 instance1,vlan34 属于 instance2;两个 instance 的主备根桥分别在 SW1 和 SW2 上,并且要求 CLIENT1访问 R1 时经过的路径是 SW3-SW1-R1;同时要求 CLIENT3 访问 R1 时经过的路径是SW3-SW2-R1; 排错思路: ①查看SW3 SW1 SW

ledrsnet的博客 5759

PAT甲级 1014 Waiting in Line

PAT甲级 1014 Waiting in Line Suppose a bank has N windows open for service. There is a yellow line in front of the windows which devides the waiting area into two parts. The rules for the customers to w...

旺崽的博客 3035

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

PAT甲题 1014 Waiting in Line

PAT甲题 1014 Waiting in Line思路:注意点:代码: 思路: 1.网上大家都是用的队列,好像最近用map用的上瘾我依旧用了map; 2.每有一个人进黄线内,他的开始时间和结束时间就已经确定,我定义了一个map存储顾客号和他的结束时间,若开始时间在五点或五点以后则不记录; 3.定义一个map存储时间序列,即从小到大存储每个会有人离开的时间点,时间是关键字,窗口号是值,若此时有多人...

Yuhan的博客 281

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

PAT 甲级1014 Waiting in Line

PAT 甲级1014 Waiting in Line 题目描述(中文大意): 假设银行有N个窗口开放服务。在所有窗口前有一条黄线将等待区域分成俩部分。客户排队的规则是: 黄线以内的区域每个窗口前都足够容纳M个客户。因此当所有N个队都排满了之后,其他客户,也就是在第(NM+1)个用户(包括该用户)之后的所有用户都必须等待在黄线区之外。 每个在黄线外的客户都会选择一个最短的队列去排队,如果当前有俩个...

努力不脱发的程序媛 269

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

【PAT甲级】 1014 Waiting in Line

【PAT甲级】 1014 Waiting in Line

lemon1219的博客 379

PAT甲级1014 Waiting in Line (30分)

PAT甲级1014 Waiting in Line (30分) 题目: AC代码: #include <iostream> #include <queue> #include <vector> using namespace std; struct node { int poptime, endtime; queue<int> q;...

weixin_43795683的博客 227

Day51: [PAT甲级] 1014 Waiting in Line (30分)

Day51: [PAT甲级] 1014 Waiting in Line (30分) 题源: 来自PAT真题库: https://pintia.cn/problem-sets/994805342720868352/problems/994805498207911936 代码: dirty code凑合看吧 #include<iostream> #include<string&gt...

qq2215459786的博客 167

[PAT-Advanced] A1014 Waiting in Line (30)

文章目录A1014 Waiting in Line (30分)Input Specification:Output Specification:Sample Input:Sample Output:CodeAnalysis 作者: CHEN, Yue 单位: 浙江大学 时间限制: 400 ms 内存限制: 64 MB 代码长度限制: 16 KB A1014 Waiting in Line (30分...

Duke 282

PAT 甲级 1014 Waiting in Line

PAT 甲级 1014 Waiting in Line #include <bits/stdc++.h> using namespace std; struct Msg{ int end,cost; Msg(int _cost):cost(_cost){} }; vector<Msg> msg; int main(){ int n,m,k,q,cost; cin>>n>>m>>k>>q; for(

桂圆儿的仓库 242

PAT 1014. Waiting in Line

题目:http://pat.zju.edu.cn/contests/pat-a-practise/1014 题解: 模拟题。 先把n*m个客户加入对应的n的窗口队列中,如果还有客户,枚举判断出n个窗口中最早处理完的队列,然后将用户加入此队列。 最后将时间和时限进行比较,输出。 代码: #include #include #include #include #include #inclu

Ted's 游乐园 2843

PAT甲级-1014 Waiting in Line

银行排队问题 模拟 C++ 队列

weixin_74092648的博客 1443

PAT真题练习(甲级)1014 Waiting in Line (30 分)

PAT真题练习(甲级)1014 Waiting in Line (30 分) Sample Input: 2 2 7 5 1 2 6 4 3 534 2 3 4 5 6 7 Sample Output: 08:07 08:06 08:10 17:00 Sorry #include<iostream> #include <string> #include <...

Be Quick & Clever & Lucky 295

PAT-ADVANCED1014——Waiting in Line

我的PAT-ADVANCED代码仓:https://github.com/617076674/PAT-ADVANCED 原题链接:https://pintia.cn/problem-sets/994805342720868352/problems/994805498207911936 题目描述: 题目翻译: 1014 排队 假设一家银行共有N个窗口开放提供服务。每个窗口前面有一条黄线...

清风阁 404

【PAT 甲级】1014 Waiting in Line

银行排队模拟系统(PAT 1014题) 解题思路 初始化窗口队列:创建N个窗口队列,每个队列最多容纳M位客户。 处理前N×M位客户:按照最短队列优先、编号最小的规则分配客户到窗口。 处理剩余客户: 找出最早完成服务的窗口(队首剩余时间最小) 推进时间,更新所有窗口的剩余服务时间 将等待客户分配到空出的队列 计算客户服务时间: 开始时间 = 窗口完成前面所有客户服务的时间 结束时间 = 开始时间 + 客户服务时间 处理查询:检查客户是否在17:00前开始服务,输出结果或"Sorry" 关键

AmiaYukiAchami的博客 591
上一篇: [Java] java异常处理(1)
下一篇: [Economist] iPhones make Chinese eyes light up iPhone使中国人欢呼雀跃
cloudbye
博客等级 码龄14年 0粉丝 4原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值