Submission #533036

#TimeUsernameProblemLanguageResultExecution timeMemory
533036MinhAnhndRegions (IOI09_regions)C++14
0 / 100
8093 ms23688 KiB
#include <bits/stdc++.h> #include <iostream> #define ll long long #define ull unsigned ll using namespace std; unsigned long long prime[25001]; long par[200001]; long country[200001]; vector<long> child[200001]; unsigned long long dp[25001]={}; ull dfs(long u){ ull result = 1; for (auto v:child[u]){ result*=dfs(v); } if (dp[country[u]] ==0){ dp[country[u]] = result; } else { dp[country[u]] *=result; } result*=prime[country[u]]; return result; } int main(){ long j = 2; for (long i = 1;i<=25000;i++){ bool o = false; do { o = false; for (long k = 2;k*k<=j;k++){ if (j%k == 0){ j++; o = true; break; } } } while (o); prime[i] = (unsigned long long) j; j++; } unsigned long long regions[25001]; long N,R,Q; cin>>N>>R>>Q; cin>>country[1]; for(long i = 2;i<=N;i++){ cin>>par[i]; child[par[i]].push_back(i); cin>>country[i]; } dfs(1); for (long i = 1;i<=Q;i++){ ull j,k,answer = 0; cin>>j>>k; ull temp = dp[j]; ull divider = prime[k]; while (temp%divider == 0){ answer++; temp/=divider; } cout<<answer<<flush; } }

Compilation message (stderr)

regions.cpp: In function 'int main()':
regions.cpp:49:24: warning: unused variable 'regions' [-Wunused-variable]
   49 |     unsigned long long regions[25001];
      |                        ^~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...