1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
#include <bits/stdc++.h>
using namespace std;

int main()
{
	ios_base::sync_with_stdio(false);
	cin.tie(NULL);
	int n,k,czy=0;
	unsigned long long odp=0;
	cin>>n>>k;
	int a[n];
	bool b[n];
	for(int i=0;i<n;i++)
	{
		cin>>a[i];
		b[i]=0;
	}
	for(int i=0;i<n;i++)
	{
		if(b[a[i]-1]==0)
		{
			b[a[i]-1]=1;
			czy++;
		}
		if(czy==k)	break;
	}
	if(czy==k)
	{
		for(int i=0;i<n;i++)	b[i]=0;
		b[a[0]-1]=1;
		for(int i=1;i<k;i++)
		{
			if(b[a[i]-1]==1)
			{
				for(int j=i;j<n;j++)
				{
					if(b[a[j]-1]==0)
					{
						odp+=j-i;
						b[a[j]-1]=1;
						break;
					}
				}
			}
			else	b[a[i]-1]=1;
		}
		cout<<odp;
	}
	else
	{
		cout<<"-1";
	}
	return 0;
}