PAT 1014. Waiting in Line (30)

[图解]SysML与EA实战:住宅安全系统接口块设计全解析 本文详细解析了使用SysML和EA工具进行住宅安全系统接口块设计的全流程。从系统上下文图入门到接口块实战技巧,涵盖块定义图与内部块图的视角转换,以及多图协同建模方法论。特别分享EA工具的高效操作指南和常见问题避坑建议,帮助工程师掌握精确信号定义、端口方向设置等关键技能,提升安防系统设计效率。 阅读详情

//1014. Waiting in Line (30)
/*
	解题思路:
	    对每个要加入队列的人进行以下两类考虑:
		1)找到长度最短的队列,将当前考虑的元素加入进去。
		2)如果队列长度都已经满的情况下,找到最先出来的元素,pop出来,然后将新的元素push进去。
	
	特点:
		排队题基本不需要考虑超时;
*/

/*
	有三个case的测试点是:
		注意条件是要在17:00之前serve的都可以,比如说某顾客从16:00-18:00结束,那么输出结果为18:00而不是Sorry。
*/

//accepted
#include <iostream>
#include <queue>
using namespace std;

int main()
{
	int N, M, K, Q;
	scanf("%d%d%d%d", &N,&M,&K,&Q);

	int time[1005];
	queue<int> que[25];
	int result[1005];

	int i;
	for (i = 1;i<=K;i++)
	{
		scanf("%d", &time[i]);
	}

	int QueryNum = 0;

	//count
	int curr = 1;
	que[0].push(curr);
	result[curr] = time[1];
	curr++;

	int j;
	int MinLen = M;
	int MinIndex = -1;
	int BeginTime[25];
	int MinTime = 700;
	int MinTimeIndex = -1;

	fill(BeginTime, BeginTime+N+1, 0);

	BeginTime[0] = time[1];

	int k; 
	while (curr <= K)
	{
		MinIndex = -1;
		MinLen = K;
		MinTimeIndex = -1;
		MinTime = 700;
		//找到数组长度最小的
		for (j=0;j<N;j++)
		{
			if (que[j].size() < MinLen )
			{
				MinLen = que[j].size();
				MinIndex = j;
			}
		}

		if (MinLen == N)
		{
			//找到最早可以结束的加入进去
			for (j = 0;j<N;j++)
			{
				int tmp = que[j].front();
				if (result[tmp] < MinTime)
				{
					MinTime = result[tmp];
					MinTimeIndex = j;
				}
			}

			if (MinTimeIndex == -1)
			{
				for (k = curr;k<=K;k++)
				{
					result[curr] = 541;
				}
				break;
			}
			que[MinTimeIndex].pop();
			que[MinTimeIndex].push(curr);
			result[curr] = BeginTime[MinTimeIndex] + time[curr];		
			BeginTime[MinTimeIndex] = result[curr];
		}
		else
		{
			que[MinIndex].push(curr);
			result[curr] = BeginTime[MinIndex] + time[curr];
			BeginTime[MinIndex] = result[curr]; 
		}
		curr++;
	}
	for (i = 0;i<Q;i++)
	{
		scanf("%d", &QueryNum);
		int r =  result[QueryNum];
		if (r > 540)
		{
			if (r - time[QueryNum] < 540)
			{
				printf("%02d:%02d\n", r/60+8, r%60);
			}
			else 
				printf("Sorry\n");
		}
		else
		{
			printf("%02d:%02d\n", r/60+8, r%60);
		}
	}
	return 0;
}

【超详细】计算机组成原理总结及思维导图 计算机组成 第一章 计算机系统概论 冯诺依曼型计算机特点 1.计算机由运算器,控制器,存储器,输入和输出设备5部分组成 2.采用存储程序的方式,程序和数据放在同一个存储器中,并以二进制表示。 3.指令由操作码和地址码组成 4.指令在存储器中按执行顺序存放,由指令计数器(即程序计数器PC)指明要执行的指令所在的储存单元地址,一般按顺序递增,但可按运算结果或外界条件而改变 5.机器以运... 阅读详情

相关推荐

Robust MPC 4 (鲁棒&随机 MPC)

Robust MPC

weixin_44299806的博客 2736

1014 Waiting in Line 详解 38行代码AC 测试点

每个顾客都想找当前最短队列排队,且入黄线后就不能换队,那么每次就为顾客找到当前空余的最短队列入队,同时总人数hc++,当hc==n*m时就代表所有队列人数已满,而按题意和生活经验都是最早完成的顾客出队,那就找所有窗口队头最早完成的出队,同时hc--。最关键的是记录每个顾客的完成时间,当要查询时可以直接找到对应的输出。题目中每位顾客的完成时间都是前者的完成时间加上自己的处理时间而与其他无关,就用now数组记录每个窗口当前的完成时间,每完成一个顾客就用他的完成时间覆盖,这样就可避免重复计算。...

qq_61046537的博客 570

硬件笔记——HDMI接口

HDMI可以同时传输视频信号、音频信号和控制信号。其中高速信号有四组:从Data TX到Data RX有3组差分数据信号(TMDS_DATA0~2)和一组差分时钟信号(TMDS_CLOCK)。以及若干低速线。脚编号信号名称信号类型功能说明1热插拔检测连接状态检测。接收端通过此引脚向源端发送高电平信号,通知其已连接并可以开始读取EDID。2UTILITY车载用途悬空3TMDS数据通道2差分信号正极,用于传输视频像素、音频和数据包。4TMDS数据2屏蔽。

2501_94625908的博客 542

1014. Waiting in Line (30)

一两个测试点过不了真是揪心!! 1014. Waiting in Line (30) https://www.patest.cn/contests/pat-a-practise/1014 起先我按照思路,根据时间流程,每过一分钟,取出每个窗口第一个人,使他的输出时间+1,剩余服务时间-1,判断他的剩余服务时间,剩余服务时间如若等于0,用户出队,随后,判断大队列中的人数大于

liu1xiang的专栏 352

基于单片机负载控制的无人机电气设备监测系统设计

为深入分析无人机电气设备的电子负载性能,实现对传输电子量的合理性监管与控制,设计基于单片机负载控制的无人机电气设备监测系统;利用电气信号发生电路,构建负载网络控制器与以太网模块运行所需的电气设备负载环境,借助PCB监控板建立PLC扩展负载模块与核心监控主机之间的物理连接关系,实现无人机电气设备监测系统的硬件执行环境搭建;在此基础上,通过STM32型单片机移植协议,确定无人机电气设备通信主机的现有组态形式,联合已设定的监控任务有线级条件,实现监测系统的软件执行环境搭建,完成基于单片机负载控制的无人机电气设备监

weixin_45905610的博客 1300

C语言实现TCP聊天室:Socket编程与并发模型实战解析

网络编程是构建分布式系统的核心技术,其核心在于理解进程间通信的底层机制。TCP/IP协议栈提供了可靠的字节流传输服务,通过Socket API这一抽象接口,开发者可以在应用层建立连接、收发数据。为了高效处理多个并发连接,服务器需要采用多线程或I/O复用模型,前者为每个连接创建独立线程,逻辑清晰但资源消耗大;后者通过select、poll或epoll等系统调用监控多个文件描述符,显著提升并发能力。这些技术是构建高性能网络服务(如即时通讯、在线游戏服务器)的基础。本文以C语言实现一个简洁的TCP聊天室为例,详细

weixin_32642109的博客 292

**甲级PAT1014 Waiting in Line (已经通过全部测试,找到一个奇怪的坑但是不知道为什么,跪求大佬回复)

1014 Waiting in Line (30)(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 customer...

Joyceyang_999的博客 2387

基于网关实现不同网段S7-1200 CPU的通信方法

在A网段的计算机上ping B网段的计算机:在A网段的计算机上使用ping命令,向B网段的计算机发送数据包。在B网段的计算机上ping A网段的计算机:同样地,在B网段的计算机上使用ping命令,向A网段的计算机发送数据包。数据包也会经过路由器进行转发,最终到达A网段的计算机。配置路由器:在路由器上配置两个网段的IP地址和子网掩码,并设置路由表,使得路由器可以将A网段和B网段之间的数据进行转发。确定两个网络之间的路由器:假设需要将A网段和B网段进行通信,需要在A、B两个网段之间设置一台路由器。

电工 2400

PAT 1014 Waiting in Line(模拟+队列操作)

题目https://www.patest.cn/contests/pat-a-practise/1014 银行前台处理客户的过程如下,有n个窗口,每个窗口前的队伍可以排m个人,其余人在黄线外等待;每当有人处理完毕时,黄线外的人找最短的、序号最小队伍插入;求每个人的结束时间。 解题思路本题是明显的队列的模拟题,遗憾的是改了好久代码只过了四组,最后一组依然是段错误,虽然还不知道什么原因:(,看了一下

Lecholin的博客 889

基础入门篇 | YOLOv8 项目【训练】【验证】【推理】最简单教程 | YOLOv8必看 | 最新更新,直接打印 FPS,mAP50,75,95

三个文件搞定YOLOv8【训练】【验证】【推理】🚀🚀🚀

Coding... 2万+

YOLOv11改进策略【模型轻量化】| 替换骨干网络为 MobileViTv1高效的信息编码与融合模块,获取局部和全局信息

本文记录的是基于MobileNet V4的YOLOv11目标检测轻量化改进方法研究。其中MobileViT块旨在以较少的参数对输入张量中的进行建模,结合卷积与 Transformer 的优势,并实现有效的信息编码与融合本文配置了原论文中和三种模型,以满足不同的需求。

Limiiiing的博客 1074

pat1014Waiting in Line (30)

题意分析: (1)本题模拟银行排队,逻辑上不难,操作起来有点麻烦。银行来了K个客户,银行有N个窗口,每个窗口前有M个位置排队,客户选择最短的队伍排,根据每个客户的序号和服务时间来确定最后客户离开银行的时间。 (2)属于队列的问题,但实际上可以将问题简化:因为每个客户的服务时间是固定的,假设前N*M个客户达到之后排好位置后,他们的离开时间也就确定好了,即每个窗口本次服务结束的时间也就确定了,比如

LostStephon的博客 879

WPF+MVVM案例实战(二十三)- 阴影效果详解

通过附加属性实现阴影效果,通过改变不同的阴影属性值达到不同阴影效果

lingshuangcanxue 561

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

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

pscad IEEE标准系统搭建说明

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

[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

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

PAT 1014 Waiting in Line (30 分)

PAT 1014 Waiting in Line (30 分) 排队论

Gnomeshgh的博客 917

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

PAT 1014 Waiting in Line (30 分)

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 to ...

peanWang的博客 383

PAT 1014 Waiting in Line (30)

1014 Waiting in Line (30)(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 ...

Maple的博客 417

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

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 custome...

cp0328的博客 4081

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

PAT1014. 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 to wait in line are:

wtrnash的专栏 334

PAT甲级 - 1014 Waiting in Line (30 分)

题目链接:PAT甲级 - 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...

270

PAT甲级 1014 Waiting in Line (30分)

1014 Waiting in Line (30分) 题目链接:PAT A 1014 思路分析:这道题有点难,属于稍复杂的模拟题。这种题可能涉及不到什么具体的算法,也没有什么模板可以使用,所以只能是根据题意来构建程序。题目中的关键点是黄线,银行八点上班后,等候的顾客依次被分配到每一个窗口,然后根据黄线内的容量决定有多少顾客可以进入黄线内等候。当一个人服务结束,也就是说黄线内有剩余容量的时候,黄...

weixin_43684054的博客 195

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甲级1014 Waiting in Line (30 分)

1014Waiting in Line(30分) Suppose a bank hasNwindows 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...

Dexter 232

PAT_A 1014. Waiting in Line (30)

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 to wai

longtails的博客 710
上一篇: PAT 1013. Battle Over Cities (25)
下一篇: PAT 1015. Reversible Primes (20)
xuxumoi
博客等级 码龄16年 16粉丝 151原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值