]> Skullheadx's Git Forge - CCC.git/commitdiff
2016 S3 wip
authorSkullheadx <94652084+Skullheadx@users.noreply.github.com>
Sat, 19 Nov 2022 22:33:17 +0000 (17:33 -0500)
committerSkullheadx <94652084+Skullheadx@users.noreply.github.com>
Sat, 19 Nov 2022 22:33:17 +0000 (17:33 -0500)
Main/C++/2016/S3.cpp
Main/C++/test.cpp

index eb48f75371f4129845293d750ea4f5e62fb7b593..45cf60792e7822a18429a7121734ff4ab338e205 100644 (file)
@@ -16,15 +16,13 @@ int main()
 
     map<int,vector<int>> tree;
     int a,b;
-    vector<int> temp1{0};
     for (int i = 0; i < N-1;i++)
     {
         cin >> a >> b;
 
         if ((tree.find(a) == tree.end()))
         { // not found
-            temp1[0] = b;
-            tree.insert({a,temp1});
+            tree.insert({a,{b}});
         }
         else
         {// found
@@ -32,8 +30,7 @@ int main()
         }
         if ((tree.find(b) == tree.end()))
         { // not found
-            temp1[0]= a;
-            tree.insert({b,temp1});
+            tree.insert({b,{a}});
         }
         else
         {// found
@@ -43,13 +40,10 @@ int main()
     queue<vector<vector<int>>> q;
     for (int i = 0; i < M; i++)
     {
-        vector<int> tseen;
-        vector<int> c{pho_restaurants[i],0};
-        vector<vector<int>> temp{c,tseen};
-        q.push(temp);
+        q.push({{pho_restaurants[i],0},{}});
     }
-    vector<vector<vector<int>>> seen;
-    vector<int> pho_seen,temp3;
+    set<vector<vector<int>>> seen;
+    vector<int> pho_seen;
     vector<vector<int>> temp, temp2;
     int current, length;
     while (!q.empty())
@@ -60,18 +54,15 @@ int main()
         length = temp[0][1];
         pho_seen = temp[1];
         q.pop();
-        temp3.clear();
-        temp3.push_back(current);
-        temp2.clear();
-        temp2.push_back(temp3);
-        temp2.push_back(pho_seen);
+        temp2 = {{current},pho_seen};
+
         if (find(seen.begin(),seen.end(),temp2) != seen.end())
         {
             continue;
         }
         else
         {
-            seen.push_back(temp2);
+            seen.insert(temp2);
         }
 
 
@@ -87,9 +78,7 @@ int main()
 
         for (int r = 0; r < tree[current].size();r++)
         {
-            vector<int> c{tree[current][r], length + 1};
-            vector<vector<int>> next_value{c,pho_seen};
-            q.push(next_value);
+            q.push({{tree[current][r], length + 1}, pho_seen});
         }
     }
     return 0;
index 1a874e2aaa20b474196f9c6219cde2750678c8ac..97b947698eb01895f70a0aae39cbd363f01028b2 100644 (file)
@@ -12,13 +12,16 @@ void print_v(vector<int> v)
 
 int main()
 {
-    vector<int> v{1,2,3};
-    vector<int> v2 = v;
-    print_v(v);
-    print_v(v2);
-    v2[1] = 4;
-    print_v(v);
-    print_v(v2);
+//    vector<int> v{1,2,3};
+//    vector<int> v2 = v;
+//    print_v(v);
+//    print_v(v2);
+//    v2[1] = 4;
+//    print_v(v);
+//    print_v(v2);
+
+
+//vector<unordered_set<int>,vector<int>> v;
 
     return 0;
 }