Ankit_132

D

Aug 30th, 2023
376
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.76 KB | None | 0 0
  1. #include <bits/stdc++.h>
  2.  
  3. using namespace std;
  4.  
  5. #define ll     long long
  6. #define _test   int _TEST; cin>>_TEST; while(_TEST--)
  7.  
  8. int main()
  9. {
  10.     _test
  11.     {
  12.         int n, m;
  13.         cin>>n>>m;
  14.  
  15.         vector<string> s(n);
  16.         for(auto &e: s)
  17.             cin>>e;
  18.  
  19.         int f = 0;
  20.  
  21.         for(int i=0; i<n; i++)
  22.         {
  23.             int cnt = 0;
  24.             for(int j=0; j<m; j++)
  25.                 cnt += (s[i][j] != '.');
  26.  
  27.             f |= (cnt%2);
  28.         }
  29.  
  30.         for(int j=0; j<m; j++)
  31.         {
  32.             int cnt = 0;
  33.             for(int i=0; i<n; i++)
  34.                 cnt += (s[i][j] != '.');
  35.  
  36.             f |= (cnt%2);
  37.         }
  38.  
  39.         if(f)
  40.         {
  41.             cout<<-1<<"\n";
  42.             continue;
  43.         }
  44.  
  45.  
  46.         vector<vector<int>> ans(n, vector<int> (m, -1));
  47.  
  48.         for(int i=0; i<n-1; i++)
  49.         {
  50.             int c = 0;
  51.  
  52.             for(int j=0; j<m; j++)
  53.             {
  54.                 if(s[i][j]=='U')
  55.                 {
  56.                     ans[i][j] = c;
  57.                     ans[i+1][j] = c^1;
  58.                     c ^= 1;
  59.                 }
  60.             }
  61.         }
  62.  
  63.         for(int j=0; j<m-1; j++)
  64.         {
  65.             int c = 0;
  66.  
  67.             for(int i=0; i<n; i++)
  68.             {
  69.                 if(s[i][j]=='L')
  70.                 {
  71.                     ans[i][j] = c;
  72.                     ans[i][j+1] = c^1;
  73.                     c ^= 1;
  74.                 }
  75.             }
  76.         }
  77.  
  78.         for(int i=0; i<n; i++)
  79.         {
  80.             for(int j=0; j<m; j++)
  81.             {
  82.                 if(ans[i][j] == -1)     cout<<'.';
  83.                 if(ans[i][j] ==  1)     cout<<'B';
  84.                 if(ans[i][j] ==  0)     cout<<'W';
  85.             }
  86.             cout<<"\n";
  87.         }
  88.     }
  89. }
Advertisement
Add Comment
Please, Sign In to add comment