fork download
  1. #include<bits/stdc++.h>
  2. using namespace std;
  3. int main()
  4. {
  5. int T;
  6. cin>>T;
  7. while(T--)
  8. {
  9. string sr;
  10. int num,p;
  11. cin>> num>> p;
  12. cin>>sr;
  13. int i=0;
  14. int j=num-1;
  15. vector<bool> swap (num);
  16. while(i<j && p>0)
  17. {
  18. while (sr[i]=='a' && i<j)
  19. {
  20. i++;
  21. }
  22. while(sr[j]=='b' && i<j)
  23. {
  24. j--;
  25. }
  26. if(i<j)
  27. {
  28. char temp =sr[i];
  29. sr[i]=sr[j];
  30. sr[j]=temp;
  31. swap[j]=true;
  32. p--;
  33. }
  34. }
  35. for(int i=0;i<num && p>0;i++)
  36. {
  37. if(sr[i]=='b' && swap[i])
  38. {
  39. sr[i]='a';
  40. p--;
  41. }
  42. else if(sr[i]=='b' && !swap[i] && p>1)
  43. {
  44. sr[i]='a';
  45. p -=2;
  46. }
  47. }
  48. cout<<sr<<endl;
  49. }
  50. return 0;
  51. }
Success #stdin #stdout 0.01s 5444KB
stdin
1
3 3
bba
stdout
aab