PS/BOJ

[백준 BOJ] 1964 오각형, 오각형, 오각형...

Jubil 2018. 11. 10. 16:08
반응형

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 + 1break;

 

        if (i == 1) ans += 5;

        else ans += 3 * (i - 1+ 4;

 

        ans %= 45678;

    }

 

    printf("%lld\n", ans);

 

    return 0;

}

cs

 



반응형

'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