n=int(input())
string=input()
string=list(string)
a=0
b=0
count=0
for i in range(0,n):
if(string[i]=="a"):
a+=1
else:
b+=1
if(i%2!=0):
if(a==b):
continue
else:
if(a>b):
a-=1
b+=1
string[i]="b"
count+=1
else:
b-=1
a+=1
string[i]="a"
count+=1
print(count)
stri="".join(map(str,string))
print(stri)
#include<bits/stdc++.h>
#include<vector>
using namespace std;
#define ll long long int
void solve(){
int n;
cin >> n;
string s;
cin >> s;
int count = 0;
for(int i = 0; i < int(s.length())-1; i+=2) {
if(s[i] == s[i+1]) {
if(s[i] == 'a') s[i] = 'b';
else s[i] = 'a';
count++;
}
}
cout << count << endl;
cout << s;
}
int main(){
ios_base::sync_with_stdio(false);
cin.tie(NULL);
int t = 1;
//cin >> t;
while(t--)
solve();
}
347. Top K Frequent Elements | 1503. Last Moment Before All Ants Fall Out of a Plank |
430. Flatten a Multilevel Doubly Linked List | 1290. Convert Binary Number in a Linked List to Integer |
1525. Number of Good Ways to Split a String | 72. Edit Distance |
563. Binary Tree Tilt | 1306. Jump Game III |
236. Lowest Common Ancestor of a Binary Tree | 790. Domino and Tromino Tiling |
878. Nth Magical Number | 2099. Find Subsequence of Length K With the Largest Sum |
1608A - Find Array | 416. Partition Equal Subset Sum |
1446. Consecutive Characters | 1618A - Polycarp and Sums of Subsequences |
1618B - Missing Bigram | 938. Range Sum of BST |
147. Insertion Sort List | 310. Minimum Height Trees |
2110. Number of Smooth Descent Periods of a Stock | 2109. Adding Spaces to a String |
2108. Find First Palindromic String in the Array | 394. Decode String |
902. Numbers At Most N Given Digit Set | 221. Maximal Square |
1200. Minimum Absolute Difference | 1619B - Squares and Cubes |
1619A - Square String | 1629B - GCD Arrays |