#include <iostream> #include <set> using namespace std; int main() { int n,k,r,l=0,s=0; set<int>marka; int m[500000]; cin>>n>>k; for(int i=0;i<n;i++) { cin>>m[i]; marka.insert(m[i]); } if(marka.size()<k)cout<<"-1"; else{ for(set<int>::iterator i=marka.begin();i!=marka.end();i++) { for(int j=0;j<n;j++) { if(m[j]==*i) { r=j; break; } } s+=(r-l); l++; } cout<<s; } return 0; }
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 | #include <iostream> #include <set> using namespace std; int main() { int n,k,r,l=0,s=0; set<int>marka; int m[500000]; cin>>n>>k; for(int i=0;i<n;i++) { cin>>m[i]; marka.insert(m[i]); } if(marka.size()<k)cout<<"-1"; else{ for(set<int>::iterator i=marka.begin();i!=marka.end();i++) { for(int j=0;j<n;j++) { if(m[j]==*i) { r=j; break; } } s+=(r-l); l++; } cout<<s; } return 0; } |