Advertisement
TwITe

Untitled

Jan 7th, 2018
76
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.28 KB | None | 0 0
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3. using ll = long long;
  4. using ull = unsigned long long;
  5. const ll MAXN = 1e5 + 1;
  6.  
  7. bool used[MAXN] {false};
  8. vector<set<int>> v;
  9. ll c[MAXN][MAXN];
  10.  
  11. void dfs(int edge) {
  12.     used[edge] = true;
  13.     for (auto u : v[edge])
  14.         if (!used[u]) {
  15.             dfs(u);
  16.         }
  17. }
  18.  
  19. void solve() {
  20.     ios::sync_with_stdio(false);
  21.     cin.tie(NULL);
  22.     int n, m;
  23.     cin >> n >> m;
  24.     v.resize(m);
  25.     for (int i = 0; i < m; i++) {
  26.         int a, b;
  27.         ll c1;
  28.         cin >> a >> b >> c1;
  29.         a--, b--;
  30.         v[a].insert(b);
  31.         v[b].insert(a);
  32.         c[a][b] = c1;
  33.     }
  34.     int q;
  35.     cin >> q;
  36.     for (int i = 0; i < q; i++) {
  37.         int key, a, b;
  38.         ll c1;
  39.         cin >> key;
  40.         if (key == 1) {
  41.             cin >> a >> b >> c1;
  42.             v[a].insert(b);
  43.             v[b].insert(a);
  44.             c[a][b] = c1;
  45.         }
  46.         if (key == 2) {
  47.             cin >> a >> b;
  48.             v[a].erase(b);
  49.  
  50.             c[a][b] = -1; // отмена рейса, cost = -1
  51.         }
  52.         if (key == 3) {
  53.             cin >> a >> b;
  54.             //поиск кратчайшего пути // длина - не более 2
  55.         }
  56.     }
  57. }
  58.  
  59. int main() {
  60.     solve();
  61.     return 0;
  62. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement