Uva 12100 - Printer Queue

題目

Problem

有台印表機,有$n$件工作等待列印($1 \le n \le 100$),你排在第$m$號位置($0 \le m \le {n-1}$),位置從零開始。
由於實在是太多人印了,所以把每件工作都加上優先權,從1~9代表低到高。
對於是否要列印有特殊的規則:(假設佇列的頭是job j

  • 如果佇列裡頭有比job j還高優先的工作,則把job j放到佇列最後頭。
  • 如果沒有,就執行job j

你需要計算你必須花多少時間才能完成你的工作。

輸入

第一行有個正整數(最多100)代表有幾筆測資。
接著每筆測資第一行有兩個整數:$n$有幾個工作在佇列裡,$m$你的工作在第幾個位置(0-index)
每筆測資的第二行,有$n$個整數,代表$n$個工作的優先級。

輸出

對於每筆測資,輸出一個正整數代表到你的工作完成要花多少時間(包含)。

想法

直接模擬題目所述。

AC Code

https://github.com/roy4801/solved_problems/blob/master/uva/12100.cpp

推薦文章