Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // input
- // 8 9
- // 0 3 3
- // 0 4 6
- // 1 5 5
- // 1 6 1
- // 2 4 6
- // 3 5 8
- // 5 6 3
- // 5 7 2
- // 6 7 6
- // vector<int> v[9];
- // for (int i = 0; i < 9; i++)
- // {
- // int x, y;
- // cin >> x >> y;
- // v[x].push_back(y);
- // }
- // for (int i = 0; i < 7; i++)
- // {
- // cout << i << ": ";
- // for (int j = 0; j < v[i].size(); j++)
- // {
- // cout << v[i][j] << " ";
- // }
- // cout << endl;
- // }
- #include <bits/stdc++.h>
- using namespace std;
- #define PTT pair<int, int>
- int main()
- {
- int vertex, edge;
- cin >> vertex >> edge;
- vector<PTT> v1[vertex];
- vector<PTT> v2[vertex];
- int source1, source2;
- for (int i = 0; i < edge; i++)
- {
- PTT p;
- cin >> source1 >> p.first >> p.second;
- v1[source1].push_back(p);
- v2[source1].push_back(p);
- source2 = p.first;
- p.first = source1;
- v2[source2].push_back(p);
- }
- cout << "directed graph: " << endl;
- for (int i = 0; i < vertex; i++)
- {
- cout << i << "-->"
- << " ";
- for (int j = 0; j < v1[i].size(); j++)
- {
- cout << v1[i][j].first << " = " << v1[i][j].second;
- if (j != v1[i].size() - 1)
- {
- cout << " , " << i << "-->";
- }
- }
- cout << endl;
- }
- cout << "undirected graph: " << endl;
- for (int i = 0; i < vertex; i++)
- {
- cout << i << "-->"
- << " ";
- for (int j = 0; j < v2[i].size(); j++)
- {
- cout << v2[i][j].first << " = " << v2[i][j].second;
- if (j != v2[i].size() - 1)
- {
- cout << " , " << i << "-->";
- }
- }
- cout << endl;
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement