ivolff

ded

Nov 22nd, 2017
139
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.53 KB | None | 0 0
  1. #include <fstream>
  2. #include <iostream>
  3. #include <vector>
  4. #include <algorithm>
  5.  
  6. using namespace std;
  7.  
  8. ifstream fin("antigray.in");
  9. ofstream fout("antigray.out");
  10.  
  11. struct vect{
  12.     int vect[16];
  13. };
  14.  
  15. bool comp(vect a,vect b){
  16.     for(int s=15;s>-1;s--){
  17.         if (a.vect[s]==b.vect[s])
  18.             continue;
  19.         else{
  20.             if(a.vect[s]<b.vect[s])
  21.                 return true;
  22.         else
  23.             return false;
  24.             }}
  25.     return true;
  26. }
  27.  
  28.  int main(){
  29.      int n;
  30.      cin>>n;
  31.      vector<vect> vectors;
  32.      vector<vect> tmp;
  33.      vect a;
  34.      a.vect[0]=0;
  35.      vectors.push_back(a);
  36.      for(int i=0;i<=n-1;i++){
  37.         sort(vectors.begin(),vectors.end()-1,comp);
  38.          for(int j=0,s=0;j<vectors.size();j++){
  39.              tmp.resize(vectors.size()*3);
  40.              tmp[s]=vectors[j];
  41.              for(int f=0;f<i+1;f++){
  42.                  vectors[j].vect[f]++;
  43.                  if(vectors[j].vect[f]==3)
  44.                      vectors[j].vect[f]=0;
  45.              }
  46.              s++;
  47.              tmp[s]=vectors[j];
  48.              for(int f=0;f<i+1;f++){
  49.                  vectors[j].vect[f]++;
  50.                  if(vectors[j].vect[f]==3)
  51.                      vectors[j].vect[f]=0;
  52.              }
  53.             s++;
  54.              tmp[s]=vectors[j];
  55.              s++;
  56.          }
  57.          vectors.resize(tmp.size());
  58.          vectors=tmp;
  59.      }
  60.      for(int i=0;i<vectors.size();i++){
  61.          for(int j=n-1;j>-1;j--)
  62.              cout<<vectors[i].vect[j];
  63.          cout<<endl;
  64.      }
  65. }
Advertisement
Add Comment
Please, Sign In to add comment