1. Job Roadmap
  2. Home
  3. Problem Set
  4. codenotelist
  5. Forum
  6. course
  7. Shore Share Sessions
  8. Record
  1. Login
  2. Sign Up
  3. Language
    1. English
    2. 한국어
    3. 简体中文
    4. 正體中文
    ZhContent TextSol AI分析

题解

1. 题目理解与思路

给定一组打印任务的优先级,我们需要按照以下规则依次打印任务:

  • 每次从队列头部取出第一个任务。
  • 如果该任务的优先级是当前队列中最高的,则立即打印该任务。
  • 否则,将该任务放到队列尾部,等待下次再处理。

P3231.打印任务排序(200分)

    1000ms Tried: 61 Accepted: 24 Difficulty: 5 所属公司 : 华为od
    算法与标签>队列

题目内容

某个打印机根据打印队列执行打印任务。打印任务分为九个优先级,分别用数字 1−91-91−9 表示,数字越大优先级越高。打印机每次从队列头部取出第一个任务 AAA,

然后检查队列余下任务中有没有比 AAA 优先级更高的任务,如果有比 AAA 优先级高的任务,则将任务 AAA 放到队列尾部,否则就执行任务 AAA 的打印。

请编写一个程序,根据输入的打印队列,输出实际的打印顺序。

输入描述

输入一行,为每个任务的优先级,优先级之间用逗号隔开,优先级取值范围是 111 ~ 999 。

输出描述

输出一行,为每个任务的打印顺序,打印顺序从 000 开始,用逗号隔开

样例1

输入

9,3,5

输出

0,2,1

说明

队列头部任务的优先级为 999 ,最先打印,故序号为 000;

接着队列头部任务优先级为 333 ,队列中还有优先级为 555 的任务,优先级 333 任务被移到队列尾部;

接着打印优先级为 555 的任务,故其序号为 111 ;

最后优先级为 333 的任务的序号为 222 。

样例2

输入

1,2,2

输出

2,0,1

说明

队列头部任务的优先级为 111 ,被移到队列尾部;接着顺序打印两个优先级为 222 的任务,故其序号分别为 000 和 111 ;最后打印剩下的优先级为 111 的任务,其序号为 222

登录后即可使用 AI 分析。

模式
倒计时时长
:

最长 10 小时 59 分;应用后按此时长重新开始。

提示:点击提交记录在左侧题面区域查看详情
题库
AI分析设置
留空使用官方API Key,每天有次数限制(自定义API Key仅限会员和管理员使用,不限次数)
会员和管理员可切换模型;切到 Kimi/智谱/通义/豆包时需填写对应供应商 API Key
升级会员,可将运行与提交冷却时间缩短至 1 秒起

Status

  • Judging Queue
  • Service Status

Development

  • Open Source

Support

  • Help
  • Contact Us

About

  • About
  • Privacy
  • Terms of Service
  • Copyright Complaint
  1. Language
    1. English
    2. 한국어
    3. 简体中文
    4. 正體中文
  2. Legacy mode
  3. Theme
    1. Light
    2. Dark
  1. 京ICP备2025123107号-1
  2. Worker 0, 54ms
  3. Powered by Hydro v5.0.0-beta.18 Community
CLOSE


ScanQRCodePrompt

请使用微信扫描下方二维码完成注册

Forgot password or username?