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
#include <unordered_set>
#include <iostream>

int main()
{
	int il_butli, min;
	int il_przestawien = 0;
	std::cin >> il_butli >> min;
	std::unordered_set<int> butle;
	int ostatni_nowy = 0;
	for (int i = 0; i < il_butli; i++)
	{
		int temp;
		std::cin >> temp;

		if (butle.find(temp) == butle.end())
		{
			// jak nie ma w secie
			butle.insert(temp);
			il_przestawien += i - ostatni_nowy;
			ostatni_nowy = i;
		}
	}

	if (!il_przestawien)
		std::cout << -1;
	else
		std::cout << il_przestawien;

	return 0;
}