제출 #1311289

#제출 시각아이디문제언어결과실행 시간메모리
1311289al_reem_2010기지국 (IOI20_stations)C++20
8 / 100
404 ms512 KiB
// اَللَهُمَ صَلِ عَلَىَ مُحَمَدٍ وَ آلِ مُحَمَدٍ
#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 timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...