没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
试读
3页
问题描述 Printer Queue(打印队列)POJ3125 打印机顺序打印问题 这是一道ACM算法题,上面的两个是求打印时间,还有一种是求打印顺序 输入和输出: 输入 3 1 0 5 4 2 1 2 3 4 6 0 1 1 9 1 1 1 输出 1 2 5 问题解析 输入解析 第一行的: 3 3个测试用例,每个测试用例包含两行,所以下面有6行,以最后一个用例为例解析 倒数第二行6 0 这是第3个用例的第一行 6: 这个测试用例有6个打印任务, 0: 你的任务在打印队列中的位置(0表示开头,就是排第一个) 倒数第一行的1 1 9 1 1 1 这是第3个用例的第二行, 表示打印队列中的6个任
资源推荐
资源详情
资源评论
Printer Queue算法(华为算法(华为: 打印任务排序打印任务排序, POJ3125)Golang
实现实现
问题描述问题描述
Printer Queue(打印队列)POJ3125
打印机顺序打印问题
这是一道ACM算法题,上面的两个是求打印时间,还有一种是求打印顺序
输入和输出输入和输出:
输入输入
3
1 0
5
4 2
1 2 3 4
6 0
1 1 9 1 1 1
输出输出
1
2
5
问题解析问题解析
输入解析输入解析
第一行的: 3
3个测试用例,每个测试用例包含两行,所以下面有6行,以最后一个用例为例解析
倒数第二行6 0
这是第3个用例的第一行
6: 这个测试用例有6个打印任务,
0: 你的任务在打印队列中的位置(0表示开头,就是排第一个)
倒数第一行的1 1 9 1 1 1
这是第3个用例的第二行,
表示打印队列中的6个任务(因为上一行的6 0中的6表明有6个任务)的优先级
你的任务根据上一行6 0中的0表明在0位置,优先级为1(1 1 9 1 1 1)
输出解析输出解析:
1 // 第1个测试用例,打印你的任务花了1分钟
2 // 第2个测试用例,打印你的任务花了2分钟
5 // 第3个测试用例,打印你的任务花了5分钟
注意注意
只有打印才计算时间.
比如:
上面的第3个测试用例.第一个被打印的是优先级为9的任务, 最开始他前面有2个优先级为1的任务,这2个任务会每次被移动到最
后且不会打印,移动9前面的2个任务这个是不花时间的
Go代码实现打印时间代码实现打印时间
参考了Java实现
因为Go没有内置的queue,这里自己实现了一个Queue,实现的比较粗糙
package main
资源评论
weixin_38638596
- 粉丝: 3
- 资源: 984
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功