#include "Encoder.h"
#include<bits/stdc++.h>
using namespace std;
vector<vector<int>>adj;
vector<pair<int,int>>stf;
int timea=0;
void solve(int u,int par=-1){
timea++;
stf[u].first=timea;
for(auto x:adj[u]){
if(x!=par){
solve(x,u);
}
}
stf[u].second=timea;
}
void Encode(int N, int A[], int B[])
{
adj.clear();
stf.clear();
adj.resize(N+1);
stf.resize(N+1);
timea=0;
for (int i = 0; i < N-1; ++i) {
adj[A[i]].push_back(B[i]);
adj[B[i]].push_back(A[i]);
}
solve(0);
for(int i=0;i<N;i++){
Code(i,stf[i].first+(stf[i].second*(1ll<<30)));
}
}
#include "Device.h"
#include<bits/stdc++.h>
using namespace std;
void InitDevice()
{
}
int Answer(long long S, long long T)
{
pair<long long ,long long>stfs,stft;
stfs.first=(((1<<30)-1)&S);
stft.first=(((1<<30)-1)&T);
S>>=30;
T>>=30;
stfs.second=S;
stft.second=T;
if(stft.first>=stfs.first&&stft.second<=stfs.second){
return 1;
}
if(stfs.first>=stft.first&&stfs.second<=stft.second){
return 0;
}
return 2;
}
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
1 ms |
4880 KB |
Output is correct |
2 |
Correct |
1 ms |
4884 KB |
Output is correct |
3 |
Correct |
0 ms |
4896 KB |
Output is correct |
4 |
Correct |
1 ms |
4884 KB |
Output is correct |
5 |
Correct |
2 ms |
4896 KB |
Output is correct |
6 |
Correct |
1 ms |
4892 KB |
Output is correct |
7 |
Correct |
1 ms |
4892 KB |
Output is correct |
8 |
Correct |
0 ms |
5392 KB |
Output is correct |
9 |
Correct |
0 ms |
4896 KB |
Output is correct |
10 |
Correct |
1 ms |
4896 KB |
Output is correct |
11 |
Correct |
1 ms |
4892 KB |
Output is correct |
12 |
Correct |
1 ms |
4892 KB |
Output is correct |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Incorrect |
119 ms |
19488 KB |
Output isn't correct - L = 751619277500 |
2 |
Halted |
0 ms |
0 KB |
- |