和两篇题解的思路都一致,但就是没有分,求调
#include<bits/stdc++.h>
using namespace std;
int main(){
bool b[500010];
long long ans=0,n,k,a,c;
cin>>n>>k;
for(int i=0;i<n;i++){
cin>>a;
if(!b[a]){
b[a]=1;
ans+=i-c-1;
c++;
}
if(c==k){
cout<<ans;
return 0;
}
}
cout<<-1;
return 0;
}