cf 1216a
https://codeforc.es/problemset/problem/1216/A
本题直接$O(n)$贪心。
1 #include<bits/stdc++.h> 2 using namespace std; 3 int const N=200000+10; 4 char s[N]; 5 int main(){ 6 int n,ans=0,num=0; 7 scanf("%d%s",&n,s+1); 8 for(int i=1;i<=n;i++){ 9 if(i&1) num+=s[i]=='a'; 10 else { 11 num+=s[i]=='a'; 12 if(num==0) 13 s[i]='a',ans++; 14 else if(num==2) 15 s[i]='b',ans++; 16 num=0; 17 } 18 } 19 printf("%d\n",ans); 20 printf("%s",s+1); 21 return 0; 22 }