医院排号

这篇博客讨论了北京大学校医院的网上排号系统,系统优先考虑病情更重的病人,并结合挂号顺序进行调度。内容包括输入输出格式的描述,以及若干组示例数据,展示了如何根据病情和挂号顺序确定医院每天接待的病人名单。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

来源

医学院计概2015(高良才)-沈熳婷

描述

北大校医院最近更新了自己的网上排号系统,考虑到病人的病情程度不同,需要优先考虑病情较重的病人,病情相同的情况下需要把先在网上挂号的病人排在前面。现在给出了请求在同一天看病的n个病人网上挂号的顺序,但是校医院一天只能接收k个病人,请输出校医院当天接收的所有病人的看病顺序。

关于输入

第一行:一个整数t,表示数据的组数:
对于每组数据,分别有两行:
第一行:两个整数n 和k (k不一定小于n),表示请求在同一天看病的病人有n个,医院当天只能接受k个病人
第二行:n个整数,第i个整数表示第i个在网上挂号的病人的病情严重程度

关于输出

对每组数据输出两行:
第一行:一个整数m(m<=k),表示医院当天实际接受的病人的个数
第二行:一个整数序列,包含m个整数,用空格隔开,最后一个整数之后是一个换行符,表示医院当天看病的安排,第i个整数表示医院当天接收的第i个病人在原先挂号序列当中的序号。

例子输入

2
5 3
2 3 4 7 4
6 2
5 10 4 6 9 7

例子输出

3
4 3 5
2
2 5

提示

例子输入输出中一共有两组数据,第一组数据表示当天有5个病人在网上挂号,按照挂号时间先后排列,这五个人的病情程度分别是2,7,4,3,4。同时,医院当天只能接收3个病人。对于第一组数据,医院当天只接收了3个病人,分别是第二个,第三个和第五个(之前5个病人按照病情严重程度排列顺序是4,3,5,2,1)。对第二组数据,严重程度最高的是第2个人,其次是第五个。

#include <stdio.h>
struct number {
   
	int first;
	int num;
}num[100];//每个病人的序号(从0开始)和病情严重程度
int main() {
   
	int t = 0;
	scanf("%d", &t);
	
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值