Advertisement
tumaryui

Untitled

Jul 21st, 2020
128
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.25 KB | None | 0 0
  1. #include <bits/stdc++.h>
  2. //#pragma GCC optimize("Ofast")
  3. //#pragma GCC target("avx,avx2,fma")
  4. //#pragma GCC optimization ("unroll-loops")
  5.  
  6. #define int long long
  7. #define pb push_back
  8. #define all(s) s.begin(),s.end()
  9. #define pii pair<int,int>
  10. #define fr first
  11. #define sc second
  12. #define bst ios_base::sync_with_stdio(0);cin.tie(0);cout.tie(0);
  13. #define endl "\n"
  14. #define no cout << "NO" << endl;
  15. #define yes cout << "YES" << endl;
  16.  
  17. using namespace std;
  18.  
  19. const int N = 5e5 + 10, mod = 1e9 + 7, inf = 1e18 + 7, logn = 23;
  20. const double pi = acos(-1);
  21.  
  22.  
  23. void solve() {
  24. //soln
  25. int n;
  26. string a, b;
  27. cin >> n >> a >> b;
  28. vector<int> ans;
  29. for(int i = n - 1; i >= 0; i--) {
  30. if(a[i] != b[i]) {
  31. if(a[0] != b[i]) {
  32. for(int j = 0; j <= i; j++) {
  33. a[j] = char(1 + '0' - a[j]);
  34. }
  35. reverse(a.begin(), a.begin() + i + 1);
  36. ans.pb(i + 1);
  37. } else {
  38. a[0] = char(1 + '0' - a[0]);
  39. ans.pb(1);
  40. for(int j = 0; j <= i; j++) {
  41. a[j] = char(1 + '0' - a[j]);
  42. }
  43. reverse(a.begin(), a.begin() + i + 1);
  44. ans.pb(i + 1);
  45. }
  46. }
  47. }
  48. cout << ans.size() << endl;
  49. for(auto it: ans) {
  50. cout << it << " ";
  51. }
  52. cout << endl;
  53. }
  54. main() {
  55. bst;
  56. int t = 1;
  57. cin >> t;
  58. while(t--) {
  59. solve();
  60. }
  61. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement