| # | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
|---|---|---|---|---|---|---|---|
| 1336237 | veham | 육각형 영역 (APIO21_hexagon) | C++20 | 0 ms | 344 KiB |
#include "hexagon.h"
#include <bits/stdc++.h>
using namespace std;
typedef vector<int> vi;
typedef long long ll;
typedef vector<ll> vl;
ll const MOD = 1e9 + 7;
ll calc_area(int N, vi &D, vi &L) {
ll area = 6LL * N - 3LL * (N-2), y = 0;
vl C1 = {-1,0,6,6,0,-6,-6},C2 = {-1,0,3,0,0,-3,0}, C3 = {-1,-1,0,0,1,0,0}, C4 = {-1,1,1,0,-1,-1,0};
area %= MOD;
for(int i = 0;i < N;i++){
area += C1[D[i]] * L[i] * y + C2[D[i]] * L[i] * L[i];
area += ll(L[i] - 1) * 3;
area %= MOD;
area += MOD;
area %= MOD;
y += C4[D[i]] * L[i];
y %= MOD;
y += MOD;
y %= MOD;
}
return area/6;
}
int draw_territory(int N, int A, int B, vi D, vi L) {
ll Ar = calc_area(N,D,L);
return (Ar * A) % MOD;
}
| # | 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... | ||||
