#include <iostream>
#include<bits/stdc++.h>

using namespace std;

int main() {
	// your code goes here
	int n,k;
	cin>>n>>k;
	vector<int> arr(n);
	for(int i=0;i<n;i++){
		cin>>arr[i];
	}
	
	unordered_map<int,int> mpp;
	int i=0;
	int j=0;
	int sum=0;
	int ans=0;
	
	
	while(j<n){
		mpp[arr[j]]++;
		sum+=arr[j];
		
		if(j-i+1>k){
			mpp[arr[i]]--;
			sum-=arr[i];
			if(mpp[arr[i]]==0){
				mpp.erase(arr[i]);
			}
			i++;
			
		}
		if(mpp.size()==k){
			ans=max(ans,sum);
			
		}
		j++;
	}
	cout<<ans<<endl;
	
	return 0;
}