fork download
  1. #include <iostream>
  2. #include<bits/stdc++.h>
  3.  
  4. using namespace std;
  5.  
  6. int main() {
  7. // your code goes here
  8. int n,k;
  9. cin>>n>>k;
  10. vector<int> arr(n);
  11. for(int i=0;i<n;i++){
  12. cin>>arr[i];
  13. }
  14.  
  15. unordered_map<int,int> mpp;
  16. int i=0;
  17. int j=0;
  18. int sum=0;
  19. int ans=0;
  20.  
  21.  
  22. while(j<n){
  23. mpp[arr[j]]++;
  24. sum+=arr[j];
  25.  
  26. if(j-i+1>k){
  27. mpp[arr[i]]--;
  28. sum-=arr[i];
  29. if(mpp[arr[i]]==0){
  30. mpp.erase(arr[i]);
  31. }
  32. i++;
  33.  
  34. }
  35. if(mpp.size()==k){
  36. ans=max(ans,sum);
  37.  
  38. }
  39. j++;
  40. }
  41. cout<<ans<<endl;
  42.  
  43. return 0;
  44. }
Success #stdin #stdout 0s 544KB
stdin
7 3 
1 2 7 7 4 3 6
stdout
14