Submission #1306019

#TimeUsernameProblemLanguageResultExecution timeMemory
1306019h1drogenT-Covering (eJOI19_covering)C++20
0 / 100
1 ms572 KiB
#include<bits/stdc++.h> using namespace std; #define int long long #define ll long long #define all(x) (x).begin(),(x).end() #define rall(x) (x).rbegin(),(x).rend() #define f first #define s second #define yes cout<<"YES\n" #define no cout<<"NO\n" #define imp cout<<-1<<"\n" #define pb push_back #define pii pair<int,int> #define piii pair<int,pair<int,int>> #define ls v<<1 #define rs v<<1|1 #define fast ios::sync_with_stdio(false);cin.tie(0);cout.tie(0) #define ptree tree * const int mod=1e17+3; const int INF = 1e18; const int N=1e5+50; const int logn=18; mt19937_64 rng(14416513); vector<int>a; vector<vector<int>>g; int up[logn][N]; int sum[logn][N]; void dfs(int v,int p){ up[0][v]=p; sum[0][v]=a[v]; for(int i=1;i<logn;i++){ up[i][v]=up[i-1][up[i-1][v]]; if(up[i-1][v]!=v) sum[i][v]=sum[i-1][v]+sum[i-1][up[i-1][v]]; } for(auto k:g[v]){ if(k!=p){ dfs(k,v); } } } int jump(int v,int k){ int su=0; for(int i=logn-1;i>=0;i--){ if(((k>>i)&1)==1){ su+=sum[i][v]; v=up[i][v]; } } return v; } int get(int v,int val){ int k=0; for(int i=logn-1;i>=0;i--){ if(sum[i][v]<val){ val-=sum[i][v]; v=up[i][v]; k^=(1<<i); } } return k; } void solve(){ int n,k,q; cout<<"No\n"; } signed main(){ fast; int t=1; // cin>>t; while(t--){ solve(); } return 0; }
#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...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...