// اَللَهُمَ صَلِ عَلَىَ مُحَمَدٍ وَ آلِ مُحَمَدٍ
#include "bits/stdc++.h"
#include "stations"
using namespace std ;
//#define int long long
#define pb push_back
#define si size()
#define fi first
#define se second
#define all(a) a.begin(),a.end()
#define applejuice ios::sync_with_stdio(false) ; cin.tie(nullptr) ; cout.tie(nullptr) ;
//const int inf=1e18 ;
const int mod=1e9+7 ;
const int maxn=1e4+7 ;
int tt=1 ;
vector<int> l[maxn] ;
int vis[maxn] , pp[maxn] ;
queue<int> q ;
void dfs(int k , int p)
{
vis[k]=1 ;
p+=1 ;
pp[k]=p ;
for(int i=0 ; i<l[k].si ; i++)
{
if(vis[l[k][i]]) {continue ;}
dfs(l[k][i],p) ;
}
return ;
}
vector<int> label(int n , int k , vector<int> u , vector<int> v)
{
for(int i=0 ; i<n-1 ; i++) {l[u[i]].pb(v[i]) ; l[v[i]].pb(u[i]) ;}
int r=-1 ;
for(int i=0 ; i<n-1 ; i++) {if(l[i].si>=2) {r=i ;}}
if(r==-1) {r=0 ;}
pp[r]=1 ;
for(int i=0 ; i<l[r].si ; i++)
{
pp[l[r][i]]=(i*1000) ;
dfs(l[r][i],pp[l[r][i]]) ;
}
vector<int> a ;
for(int i=0 ; i<n ; i++) {a.pb(pp[i]) ; vis[i]=pp[i]=0 ; l[i].clear() ;}
return a ;
}
int find_next_station(int s , int t , vector<int> c)
{
if(c.si==1) {return c.back() ;}
if(s==1)
{
t/=1000 ;
for(int i=0 ; i<c.si ; i++) {if(t==c[i]/1000) {return c[i] ;}}
}
if(t/1000==s/1000 && t%1000>s%1000) {return c[1] ;}
return c[0] ;
}
/*
void solve()
{
}
signed main()
{
//wrong
applejuice ;
//cin >> tt ;
while(tt--) {solve() ;}
}
*/
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |