QOJ.ac

QOJ

Time Limit: 10 s Memory Limit: 256 MB Total points: 100

#23854. Sortera mjukisdjur

Statistics

Problem

En person med anknytning till JOI arbetar i en leksaksaffär. Idag har personen fått i uppdrag att ordna mjukisdjurshörnan i butiken.

På hyllan i mjukisdjurshörnan står $N$ mjukisdjur uppradade från vänster till höger. Hyllan är indelad med skiljeväggar i $N$ fack, och man placerar $1$ mjukisdjur i $1$ fack. Leksaksaffären säljer totalt $M$ sorters mjukisdjur, som är numrerade från $1$ till $M$. Vart och ett av de $N$ mjukisdjuren på hyllan tillhör någon av dessa $M$ sorter. Dessutom finns det minst $1$ mjukisdjur av varje sort.

För att det ska se snyggt ut vill man placera om mjukisdjuren så att alla mjukisdjur av samma sort står i en sammanhängande följd på hyllan. Man bestämde sig för att placera om mjukisdjuren på följande sätt:

  • Välj ut några av de $N$ mjukisdjuren och ta bort dem från hyllan. Flytta inte på de mjukisdjur som inte togs bort.
  • Ställ tillbaka de borttagna mjukisdjuren i de tomma facken på hyllan i valfri ordning.

Efter omplaceringen måste alla mjukisdjur av samma sort stå sammanhängande på hyllan. Skriv ett program som beräknar det minsta antalet mjukisdjur som behöver tas bort för att genomföra omplaceringen.

Indata

Indata består av $1 + N$ rader.

På rad $1$ står $2$ heltal $N, M$ ($1 \le N \le 100000$, $1 \le M \le 20$) åtskilda av ett blanksteg, vilket anger att det finns $N$ mjukisdjur och $M$ sorter.

På var och en av de följande $N$ raderna står ett heltal som är minst $1$ och högst $M$. Heltalet på rad $i$ ($1 \le i \le N$) av de $N$ raderna anger sorten på det mjukisdjur som står i det $i$-te facket från vänster på hyllan. Det garanteras att det finns minst $1$ mjukisdjur av varje sort.

Utdata

Skriv ut det minsta antalet mjukisdjur som måste tas bort för omplaceringen på $1$ rad.

Exempel på indata och utdata

Indataexempel 1

7 2
1
2
2
2
1
2
1

Utdataexempel 1

2

Indataexempel 2

12 4
1
3
2
4
2
1
2
3
1
1
3
4

Utdataexempel 2

7

I indataexempel 1 är sorterna på de ursprungligen utplacerade mjukisdjuren från vänster räknat $1, 2, 2, 2, 1, 2, 1$. För att minimera antalet mjukisdjur som tas bort vid omplaceringen kan man ta bort det $1$-a och det $6$-e mjukisdjuret från vänster, och sedan placera ett mjukisdjur av sort $2$ på plats $1$ från vänster och ett mjukisdjur av sort $1$ på plats $6$ från vänster. Då är antalet borttagna mjukisdjur $2$.

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.