This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include "hexagon.h"
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
const ll mod=1e9+7;
ll pot(ll b,ll e){
if(e==1) return b;
ll aux=pot(b,e/2);
aux*=aux; aux%=mod;
if(e%2!=0) aux=(aux*b)%mod;
return aux;
}
int draw_territory(int N, int A, int B,
std::vector<int> D, std::vector<int> L) {
ll n=L[0];
ll nh=(ll)(L[0]+1)*(ll)(L[0]+2);
nh%=mod;
nh*=pot(2,mod-2); nh%=mod;
ll ans=nh*A; ans%=mod;
ll i2=n*(2*n+(ll)1); i2%=mod;
i2*=(n+(ll)1); i2%=mod;
i2*=pot(6,mod-2); i2%=mod;
ll i=n*(n+(ll)1); i%=mod;
i*=pot(2,mod-2); i%=mod;
ll b=(i+i2)%mod;
b*=B; b%=mod;
ans+=b;
return ans;
}
# | 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... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |