Josif_tepe

Untitled

Mar 18th, 2026
186
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.52 KB | None | 0 0
  1. #include <iostream>
  2. #include <bits/stdc++.h>
  3. using namespace std;
  4. const int maxn=3*1e5;
  5. const int maxt=2*1e5+10;
  6. vector<int> adj[maxn];
  7. vector<int> v[maxt];
  8. int main()
  9. {
  10.     ios_base::sync_with_stdio(false);
  11.     cin.tie(NULL);
  12.     int n,r;
  13.     cin>>n>>r;
  14.     for(int i=0;i<r;i++)
  15.     {
  16.         int x,y;
  17.         cin>>x>>y;
  18.         adj[x].push_back(y);
  19.         adj[y].push_back(x);
  20.     }
  21.     int t;
  22.     cin>>t;
  23.     for(int i=0;i<t;i++)
  24.     {
  25.         int x,y,z;
  26.         cin>>x>>y>>z;
  27.         v[i].push_back(x);
  28.         v[i].push_back(y);
  29.         v[i].push_back(z);
  30.     }
  31.     vector<vector<bool>> visited(n,vector<bool>(n,false));
  32.     queue<vector<int>> q;
  33.     q.push({-1,0,0});
  34.     while(!q.empty())
  35.     {
  36.         vector<int> cur=q.front();
  37.         q.pop();
  38.         int prevprev=cur[0],prev=cur[1],dist=cur[2];
  39.         if(prev==n-1)
  40.         {
  41.             cout<<dist;
  42.             return 0;
  43.         }
  44.         for(int next:adj[prev])
  45.         {
  46.             bool zabraneto=false;
  47.             for(int i=0;i<t;i++)
  48.             {
  49.                 if(v[i][0]==prevprev&&v[i][1]==prev&&v[i][2]==next)
  50.                 {
  51.                     zabraneto=true;
  52.                     break;
  53.                 }
  54.             }
  55.             if(zabraneto)
  56.                 continue;
  57.             if(prevprev!=-1&&visited[prev][next])
  58.                 continue;
  59.             if(prevprev!=-1)
  60.                 visited[prev][next]=true;
  61.             q.push({prev,next,dist+1});
  62.         }
  63.     }
  64.     cout<<"GRESHKA";
  65.     return 0;
  66. }
Advertisement
Add Comment
Please, Sign In to add comment