pastebin

Paste Search Dynamic
Recent pastes
reverseArr
  1. #include <iostream>
  2. #include <vector>
  3. using namespace std;
  4.  
  5. int main() {
  6.         int N;
  7.         cin>>N;
  8.         int arr[51];
  9.         int reverseArr[51];
  10.         for(int i = 0;i<N;i++)
  11.         {
  12.                 cin>>arr[i];
  13.                 int reverse = (arr[i]+2)%4==0?4:(arr[i]+2)%4;
  14.                 reverseArr[N-i-1] = reverse;
  15.         }
  16.         int T;
  17.         cin>>T;
  18.         int testArr[101][51];
  19.        
  20.         int cnt = 0;
  21.         vector<string> v;
  22.         while(T--)
  23.         {
  24.                 for(int i = 0;i<N;i++)
  25.                 {
  26.                         cin>>testArr[T][i];
  27.  
  28.                 }
  29.                  
  30.                 for(int i = 0;i<N;i++)
  31.                 {
  32.                         int A = 0;
  33.                         for(int j=0;j<N;j++)
  34.                         {
  35.                                 if(testArr[T][j]==arr[(i+j)%N])
  36.                                         A++;
  37.                                 else
  38.                                         break;
  39.                         }
  40.                         if(A==N)
  41.                         {
  42.                                 string s = "";
  43.                                 for(int j=0;j<N;j++)
  44.                                 {
  45.                                         s+=(testArr[T][j]+'0');
  46.                                         s+=" ";
  47.                                 }
  48.                                 v.push_back(s);
  49.                                 cnt++;
  50.                         }
  51.                 }
  52.                 for(int i = 0;i<N;i++)
  53.                 {
  54.                         int B = 0;
  55.                         for(int j=0;j<N;j++)
  56.                         {
  57.                                
  58.                                 if(testArr[T][j]==reverseArr[(i+j)%N])
  59.                                         B++;
  60.                                 else
  61.                                         break;
  62.                                
  63.                         }
  64.                         if(B==N)
  65.                         {
  66.                                 string s = "";
  67.                                
  68.                                 for(int j=0;j<N;j++)
  69.                                 {
  70.                                         s+=(testArr[T][j]+'0');
  71.                                         s+=" ";
  72.                                 }
  73.                                 v.push_back(s);
  74.                                 cnt++;
  75.                         }
  76.                 }
  77.         }
  78.         cout<<cnt<<endl;
  79.         for(int i=0;i<v.size();i++)
  80.                 cout<<v[i]<<endl;
  81.         return 0;
  82. }
Parsed in 0.012 seconds