氣球游戲算法題


 

騰訊面試算法題

前段時間接觸了一下騰訊,由於疫情期間第一輪進行的是遠程線上面試,上來一道算法題,當時沒理解題目,解答錯誤,直接被PASS了。過一段時間回憶了一下題目,重新理解並解答,題目如下:

 

小Q在進行射擊氣球的游戲,如果小Q在連續T槍中打爆了所有顏色的氣球,將得到一只QQ公仔作為獎勵。(每種顏色的球至少被打爆一只)。

這個游戲中有m種不同顏色的氣球,編號1到m。

小Q一共有n發子彈,然后連續開了n槍。

小Q想知道在這n槍中,打爆所有顏色的氣球最少用了連續幾槍?

輸入格式

第一行包含兩個整數nm

第二行包含n個整數,分別表示每一槍打中的氣球的顏色,0表示沒打中任何顏色的氣球。

輸出格式

一個整數表示小Q打爆所有顏色氣球用的最少槍數。

如果小Q無法在這n槍打爆所有顏色的氣球,則輸出-1

數據范圍

1≤n≤1000000
1≤m≤2000

輸入樣例:

12 5 2 5 3 1 3 2 4 1 0 5 4 3 

輸出樣例:

6

樣例解釋

有五種顏色的氣球,編號15

游客從第二槍開始直到第七槍,這連續六槍打爆了5 3 1 3 2 4這幾種顏色的氣球,包含了從15的所有顏色,所以最少槍數為6


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM