fork download
  1. #include<bits/stdc++.h>
  2. #define int long long
  3. using namespace std;
  4. int n,m,ans=0,dem=0;
  5. map<int,int>p;
  6. signed main()
  7. {
  8. cin>>n>>m;
  9. int a[n+1];
  10. for (int i=1;i<=n;i++)
  11. {
  12. cin>>a[i];
  13. }
  14. for (int l=1,r=1;r<=n;r++)
  15. {
  16. if (p[a[r]]==0)
  17. {
  18. dem++;
  19. p[a[r]]=1;
  20. }
  21. else p[a[r]]++;
  22. while (dem>m)
  23. {
  24. p[a[l]]--;
  25. if (p[a[l]]==0)
  26. {
  27. dem--;
  28. }
  29. l++;
  30. }
  31. ans+=r-l+1;
  32. }
  33. cout<<ans;
  34. }
Success #stdin #stdout 0s 5296KB
stdin
5 2
1 3 2 1 1
stdout
10