macrofish

hashjoin1

May 29th, 2014
234
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.88 KB | None | 0 0
  1.     //Server *srv[2];
  2.     //Player *pl[4];
  3.  
  4.     //
  5.     //int arrayOfArrays[2][4];
  6.     //
  7.     ///*
  8.  
  9.     //+---+---+---+---+
  10.     //| K1| V1|V2 | V3|    //key1 - value1 - value2 - value3
  11.     //+---+---+---+---+
  12.  
  13.     //*/
  14.  
  15.  
  16.  
  17.     //
  18.     //for(int i =0;i<2;i++)
  19.     //{
  20.     //  for(int j =0;j<4;j++)
  21.     //  {
  22.     //      arrayOfArrays[i][j]=-1;  
  23.     //  }
  24.     //}
  25.     //
  26.     //srv[0]= new Server(1,"serverOne");
  27.     //srv[1]= new Server(2,"serverTwo");
  28.  
  29.     //pl[0] = new Player(1,"macrofish",1);
  30.     //pl[1] = new Player(2,"Adelka",1);
  31.     //pl[2] = new Player(3,"mocek",1);
  32.     //pl[3] = new Player(4,"lalala",2);
  33.  
  34.  
  35.     //for(int i =0;i<2;i++)
  36.     //{
  37.     //  arrayOfArrays[0][0]=srv[0]->getId();
  38.     //  arrayOfArrays[1][0]=srv[1]->getId();
  39.     //}
  40.  
  41.     //
  42.     //for(int i =0; i <4;i++)
  43.     //{
  44.     //  for(int j = 0;j<2;j++)
  45.     //  {
  46.     //      if (pl[i]->getServerID()==arrayOfArrays[j][0])
  47.     //      {
  48.     //          int x = 0;
  49.     //          while(arrayOfArrays[j][x]!=-1)
  50.     //          {
  51.     //              x++;
  52.     //          }
  53.     //          arrayOfArrays[j][x]=i;
  54.     //          break;
  55.     //      }
  56.     //  }
  57.     //}
  58.     //
  59.     //for(int i =0;i<2;i++)
  60.     //{
  61.     //  cout<< arrayOfArrays[i][0] << ": ";
  62.     //  for(int j =1;j<4;j++)
  63.     //  {
  64.     //      if (arrayOfArrays[i][j]==-1)
  65.     //      {
  66.     //          break;
  67.     //      }
  68.     //      cout << arrayOfArrays[i][j] << ",";
  69.     //  }
  70.     //  cout << endl;
  71.     //}
  72.     //
  73.  
  74.     //delete srv[0];
  75.     //delete srv[1];
  76.  
  77.     //delete pl[0];
  78.     //delete pl[1];
  79.     //delete pl[2];
  80.     //delete pl[3];
  81.  
  82.     /*
  83.      std::list<Server*> sr;
  84.      std::list<Player*> pla;
  85.     unordered_map<int, std::list<int>> ht;
  86.  
  87.     sr.push_back(new Server(1,"serverOne"));
  88.     sr.push_back(new Server(2,"serverTwo"));
  89.  
  90.     pla.push_back(new Player(1,"macrofish",1));
  91.     pla.push_back(new Player(2,"Adelka",1));
  92.     pla.push_back(new Player(3,"mocek",1));
  93.     pla.push_back(new Player(4,"lalala",2));
  94.     pla.push_back(new Player(5,"nanan",1));
  95.     pla.push_back(new Player(6,"zzz",1));
  96.     pla.push_back(new Player(7,"gggg",1));
  97.     pla.push_back(new Player(8,"wiwiwiwi",2));
  98.     pla.push_back(new Player(9,"polopolo",1));
  99.     pla.push_back(new Player(10,"123",1));
  100.     pla.push_back(new Player(11,"ratata",1));
  101.     pla.push_back(new Player(12,"naruto",2));
  102.  
  103.    
  104.     list<Server*>::iterator it;
  105.     list<Player*>::iterator iter;
  106.    
  107.     //vytvorim klice v ht
  108.     for(it=sr.begin();it!=sr.end();it++)
  109.     {
  110.         std::list<int> l;
  111.         ht.emplace((*it)->getId(),l);
  112.     }
  113.    
  114.     //pridavani hodnot do listu
  115.     for(iter=pla.begin();iter!=pla.end();iter++)
  116.     {
  117.         int tmp = (*iter)->getServerID();
  118.         int tmp2 = (*iter)->getId();
  119.         std::unordered_map<int,std::list<int>>::const_iterator got = ht.find (tmp);
  120.         if (got != ht.end())
  121.         {
  122.             std::list<int> &p = ht.at(tmp);
  123.             p.push_back(tmp2);
  124.         }
  125.     }
  126.    
  127.     //vypis
  128.     for (auto& x: ht)
  129.     {
  130.         list<int>::iterator it;
  131.         std::list<int> p = x.second;
  132.         cout << x.first <<": ";
  133.  
  134.         for(it=p.begin();it!=p.end();it++)
  135.         {
  136.             cout << *it << ",";
  137.         }
  138.         cout << endl;
  139.     }
  140.  
  141.  
  142.  
  143.     for(iter=pla.begin();iter!=pla.end();iter++)
  144.     {
  145.         delete *iter;
  146.     }
  147.  
  148.  
  149.     for(it=sr.begin();it!=sr.end();it++)
  150.     {
  151.         delete *it;
  152.     }
  153.  
  154.     */
Advertisement
Add Comment
Please, Sign In to add comment