#include<iostream>
using namespace std;

//Check on swapping a's or extracting the max length string 
int a_check(string s,int n,int k){
	int i=0;
	int sum=0;
	int t=0;
	int maxsum=0;
	while(i<=n-1){
		if(s[i]=='a'){
			sum++;
		}
		else{
			if(t!=k){
				t++;
				sum++;	
			}
			else{
				t=0;
				sum=0;
			}
		}
		if(sum>maxsum){
			maxsum=sum;
		}
		i++;
	}
	return maxsum;
}

//Check on swapping b's or extracting the max length string 
int b_check(string s,int n,int k){
	int i=0;
	int sum=0;
	int t=0;
	int maxsum=0;
	while(i<=n-1){
		if(s[i]=='b'){
			sum++;
		}
		else{
			if(t!=k){
				t++;
				sum++;	
			}
			else{
				t=0;
				sum=0;
			}
		}
		if(sum>maxsum){
			maxsum=sum;
		}
		i++;
	}
	return maxsum;
}


int main() {
	int k;
	cin>>k;
	string s;
	cin>>s;
	int n=s.size();
	
	int itr_a=a_check(s,n,k);
	int itr_b=b_check(s,n,k);
	
	cout<<max(itr_a,itr_b);
	return 0;
}