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
#include <iostream>
#include<vector>
using namespace std;
bool tab[500009];
vector <int> v;

int main()
{
   std::ios_base::sync_with_stdio(0);
   cin.tie(0);
   int n, k;
   cin >> n >> k;
   int a;
   for(int i = 0; i < n; i++)
   {
      cin >> a;
      v.push_back(a);
   }
   int l=0, w=0, o=0;
   for(int i = 0; i < n; i++)
   {
      if(tab[v[i]] == false)
      {
         tab[v[i]] = true;
         l++;
         w += i-o;
         o++;
      }
      if(l == k)
      {
         cout << w;
         return 0;
      }
   }
   if(l == k)
   {
      cout << w;
      return 0;
   }
   cout << "-1";
   return 0;
}