// اَللَهُمَ صَلِ عَلَىَ مُحَمَدٍ وَ آلِ مُحَمَدٍ
#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 ;
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]) ;}
q.push(0) ;
pp[0]=1 ;
int p=2 ;
while(!q.empty())
{
int k=q.front() ;
vis[k]=1 ;
for(int i=0 ; i<l[k].si ; i++)
{
if(vis[l[k][i]]) {continue ;}
q.push(l[k][i]) ;
pp[l[k][i]]=p ;
p+=1 ;
}
q.pop() ;
}
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(c.si==2 && s<c[0] && s<c[1])
{
if(t>>(__builtin_clz(c[0])-__builtin_clz(t))==c[0]) {return c[0] ;}
return c[1] ;
}
if(c.si==2 && c[0]<s)
{
if(t>>(__builtin_clz(c[1])-__builtin_clz(t))==c[1]) {return c[1] ;}
return c[0] ;
}
if(t>>(__builtin_clz(c[1])-__builtin_clz(t))==c[1]) {return c[1] ;}
if(t>>(__builtin_clz(c[2])-__builtin_clz(t))==c[2]) {return c[2] ;}
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... |