제출 #1063831

#제출 시각아이디문제언어결과실행 시간메모리
106383112345678육각형 영역 (APIO21_hexagon)C++17
3 / 100
1 ms348 KiB
#include "hexagon.h"
#include <bits/stdc++.h>

using namespace std;

#define ll long long

const ll mod=1e9+7;

ll a, b, k;

ll binpow(ll vl, ll idx)
{
    if (idx==0) return 1;
    ll tmp=binpow(vl, idx/2);
    if (idx%2) return (((tmp*tmp)%mod)*vl)%mod;
    else return (tmp*tmp)%mod;
}

int draw_territory(int N, int A, int B, std::vector<int> D, std::vector<int> L) {
    a=A, b=B, k=L[0]+1;
    ll x=((((k)*(k+1)/2)%mod)*a)%mod;
    //cout<<"binpow "<<binpow(6, mod-2)<<'\n';
    //cout<<"rev "<<(binpow(6, mod-2)*6)%mod<<'\n';
    ll y=(((((((b*(k-1))%mod)*(k))%mod)*(2*k-1))%mod)*binpow(6, mod-2))%mod;
    return (x+y)%mod;
}
#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...
#Verdict Execution timeMemoryGrader output
Fetching results...