Kodkraft | 프로그래밍의 벗 PivotOJ
PivotOJ

Kodkraft

시간 제한: 2000ms메모리 제한: 1024MB출처: Programmeringsolympiaden 2019 — finalBOJ 20849

문제

Nicolas vill börja tävla i programmering på hemsidan kodkraft\texttrademark. Det finns jättemånga olika divisioner man kan tävla i, men eftersom Nicolas är en ny deltagare på kodkraft™ så måste han börja i den lägsta divisionen (division 1). Nicolas mål är att så snabbt som möjligt komma upp till högsta divisionen (division KK) och vinna en tävling i den.

Enligt kodkrafts™ regler får man bara gå upp en division per tävling, så han kommer behöva göra minst en tävling i varje division. Nicolas är dock väldigt självsäker och tror därför att han kommer behöva göra exakt en tävling i varje division för att gå upp till nästa division. När det är tävling på kodkraft™ så är det bara en division i taget som tävlar, och två tävlingar överlappar aldrig i tiden. Tävlingarna följer dessutom samma schema varje år.

Nicolas får påbörja sitt tävlande på kodkraft™ vilket datum på året han vill. Det Nicolas menar med så snabbt som möjligt är att så få tävlingar som möjligt ska gå på kodkraft™ (oavsett om han deltar i dessa eller inte) mellan den första tävling han deltar i, och den första vinsten Nicolas har i den högsta divisionen. Hjälp Nicolas att beräkna hur många tävlingar som krävs!

입력

Den första raden innehåller två heltal NN och KK (1KN1061 \leq K \leq N \leq 10^6), antalet tävlingar per år, samt antalet divisioner.

Därefter kommer en rad med NN heltal x1,,xNx_1, \dots, x_N, (1xiK1 \leq x_i \leq K), schemat för tävlingarna under ett år. xix_i är divisionen som tävlar under den ii:te tävlingen efter nyår. Varje division mellan 11 och KK har minst en tävling under året.

출력

Ett heltal, det minsta antalet tävlingar som behöver gå på kodkraft™ från det att han börjar tävla där tills han har vunnit division KK.

예제

예제 1

입력
3 3
3 2 1
출력
5

예제 2

입력
3 2
1 1 2
출력
2

예제 3

입력
7 5
2 1 1 4 3 2 5
출력
19
코드를 제출하려면 로그인하세요.