2026-01-11 22:02:15 +09:00

44 lines
916 B
Java

import java.util.*;
public class _10775 {
static int[] parents;
static int ans = 0;
static int find(int x) {
if(parents[x] != x) return parents[x] = find(parents[x]);
return parents[x];
}
static void union(int x, int y) {
x = find(x);
y = find(y);
if(x > y) {
int temp = x;
x = y;
y = temp;
}
parents[y] = x;
}
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int G = sc.nextInt(), P = sc.nextInt();
parents = new int[G+1];
for(int i=1; i<=G; i++) parents[i] = i;
for(int i=0; i<P; i++) {
int gi = sc.nextInt();
gi = find(gi);
if(gi == 0) break;
union(gi, gi-1);
ans++;
}
System.out.println(ans);
sc.close();
}
}