반응형
1964_오각형, 오각형, 오각형…
링크
https://www.acmicpc.net/problem/1964
풀이
단계마다 더 추가되는 점들에 집중하면 됩니다. 우선 1단계에서 5개가 추가됩니다.
그리고 그 단계에서는
동그라미로 표현한 꼭짓점 4개와 그 사이 3개의 변에 n-1 단계만큼의 점이 추가됩니다.
즉, 수식으로 표현하면 3*(n-1) <- 변의 점 + 4 <- 꼭짓점의 점 이 됩니다.
위 예는 2단계이므로 3*(2-1) + 4만큼 더해지겠죠.
3단계에서는 3*(3-1) + 4만큼 더해지게 됩니다.
문제에서 제시해준 것처럼 45678로 나눈 나머지를 출력하면 됩니다.
코드
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
//1964_오각형, 오각형, 오각형... #include <cstdio> using namespace std;
int n, i; long long int ans;
int main() { scanf("%d", &n);
while (++i) { if (i == n + 1) break;
if (i == 1) ans += 5; else ans += 3 * (i - 1) + 4;
ans %= 45678; }
printf("%lld\n", ans);
return 0; } |
반응형
'PS > BOJ' 카테고리의 다른 글
[백준 BOJ] 9506 약수들의 합 (0) | 2018.11.12 |
---|---|
[백준 BOJ] 1629 곱셈 (0) | 2018.11.11 |
[백준 BOJ] 2864 5와 6의 차이 (0) | 2018.11.09 |
[백준 BOJ] 1100 하얀 칸 (0) | 2018.11.08 |
[백준 BOJ] 1076 저항 (0) | 2018.11.05 |