博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
UVa 12100 Printer Queue (习题 5-7)
阅读量:6840 次
发布时间:2019-06-26

本文共 1099 字,大约阅读时间需要 3 分钟。

传送门:

 

题意:队列中待打印的任务(1 <= n <= 100)带有优先级(1-9), 打印步骤为每次从队首拿出一个, 如果队列中没有优先级比该任务高的, 打印这个任务; 若有优先级高的, 把这个任务放到队尾,  并打印优先级最高的. 每打印一次耗时1分钟, 求给定任务什么时候打印.

水题A半天    不愧是弱渣..........

 

最坏的情况需要maxn*maxn的空间........

front  rear  记录前后位置

1 #include 
2 using namespace std; 3 4 const int MAXN = 111; 5 int t, n, m, _time; 6 int que[MAXN*MAXN]; 7 8 void process(){ 9 int front = 0, rear = n;10 while(true){11 int maxi = que[front];12 for(int i = front; i < rear; ++i){13 if(que[i] > maxi){14 if(front == m) m = rear;15 que[rear++] = que[front++];16 break;17 }18 else if(i == rear - 1){19 ++_time;20 if(front == m) return ;21 front++; 22 }23 }24 }25 }26 int main(){27 cin >> t;28 while(t--){29 _time = 0;30 cin >> n >> m;31 for(int i = 0; i < n; ++i) cin >> que[i];32 process();33 cout << _time << endl;34 }35 return 0;36 }

 

转载于:https://www.cnblogs.com/book-book/p/5335136.html

你可能感兴趣的文章
DNS解析过程详解
查看>>
openGL 坐标系的互相转换
查看>>
linux小技巧(1)
查看>>
软件测试人员需要掌握的linux命令(一)
查看>>
hdu 5212 : Code【莫比乌斯】
查看>>
Django - - 进阶 - - 同源策略和跨域解决方案
查看>>
Android 之 布局训练
查看>>
js正则函数match、exec、test、search、replace、split使用介绍集合
查看>>
Win10隐藏硬盘分区
查看>>
HotSpotOverview.pdf
查看>>
WindowsServer2012史记-安装和配置HyperV
查看>>
Delphi开发的IOCP测试Demo以及使用说明。
查看>>
10分钟学会 Python 函数基础知识
查看>>
应届毕业生求职之我见
查看>>
微博商城开启社会化电商之路
查看>>
在大二,我是怎么月收入5000
查看>>
校验顺序和短路
查看>>
Buffer cache和page cache的区别
查看>>
K8S集群Ingress https实践
查看>>
实战:Windows防火墙保护客户端安全
查看>>