한 줄 요약: $N \geq 3$부터 합성수다. $1$부터 $N$까지의 합은 간단하게 $S(N) = \frac{N(N+1)}{2}$로 나타낼 수 있다. 합성수는 소수와 소수의 곱 혹은 소수와 합성수의 곱 혹은 합성수와 합성수의 곱이다. 1. $N$이 $1$이라면 $S(1) = 1$이므로 이는 소수도 아니고 합성수도 아니다.2. $N$이 $2$라면 $S(2) = \frac{2 \times 3}{2} = 1 \times 3$이므로 소수다.3. $N$이 $3$보다 크거나 같다면 $S(N) = \frac{N(N+1)}{2}$에서 $N$은 $3$보다 크거나 같고 $N+1$도 $4$보다 크거나 같다. 이는 둘 중에 하나가 짝수여서 $2$로 나누어떨어진다고 가정했을 때, $N = 2$와 같이 $1$이 되지 않는다. ..
한 줄 요약: $N$이 제곱수이거나 제곱수를 $2$로 나눈 값이라면 양의 약수의 합은 홀수고 아니라면 짝수다.($16(4^{2})$, $72(\frac{12^2}{2})$, $\cdots$ 등은 홀수, $19$, $34$, $\cdots$ 등은 짝수) $N$이 주어졌을 때 양의 약수의 합이 무엇이냐고 한다면, 직접 약수를 구해서 합을 더해 줄 수 있다. 그리고 그 값이 홀수인지 짝수인지 판단 해볼수 있다. 그렇다고 이 방식이 컴퓨터로 계산했을 때 $10^{18}$ 스케일 정도까지는 폴라드 로 알고리즘을 사용한다면 엄청 느리거나 하지 않는다. 하지만 우리는 $N$을 이렇게도 나타낼 수도 있다. $N = p_{1}^{q_{1}} p_{2}^{q_{2}} \cdots p_{n}^{q_{n}} $ (단, $p_..
1. 숫자 연결하기 (BOJ 1323)pigeonhole principle 언제 한번 순환소수 구할 때 나눗셈을 해본 적이 있다면 좋은 아이디어를 떠올릴 수 있다.1. 수를 계속 추가하면서(순환소수라면 0이었고, 이 문제에서는 N이다.) K로 나눠서 나머지를 알아낸다. 그후 그 나머지+N(여기선 문자열 연산이라 생각)을 다시 합쳐서 K로 나눈다.2. 계속 하다보면 언젠가 반복되었다.즉, 예제를 생각해보면 2%9=2 -> 22%9 -> 42%9 -> 62%9 -> ... 이런 식으로 계속 연산해준다. K로 나눈 나머지는 반드시 0~K-1이므로 비둘기집 원리에 따라 최대 K번 안에 반복된다. 같은 나머지가 나왔는데도 나머지가 0으로 안 나온다면 영원히 못 나누므로 -1을 출력하고 아니면 횟수를 출력하면 된다..
1. 동전 (BOJ 9084)dp, knapsack 동전 하나를 잡고 그 동전의 값 이상부터 n까지 이전 값을 불러오면 된다. 당연히 0원은 무조건 만들 수 있으니 1로 초기화 해서 시작하면 된다. 2. 겹치는 선분 (BOJ 1689)sweeping, sorting imos법 같이 돌리면 된다. 즉, 시작 점은 1로 두고, 끝 점은 -1로 둬서 점의 위치를 중심으로 정렬해준다.예를 들어 (1, 5), (3, 6), (2, 3)가 있으면 (1, 1), (2, 1), (3, -1), (3, 1), (5, -1), (6, -1)로 될 것이다. 그리고 좌표 하나하나씩 순서대로 확인해서 변수에 +1, 혹은 -1을 하고 최댓값을 갱신하면 된다. 당연히 -1이 1보다 작으므로 먼저 계산되기 때문에 '선분의 끝 점에서..
- Total
- Today
- Yesterday
- 볼록 껍질
- BFS
- 정렬
- convex hull
- 수학
- 다이나믹 프로그래밍
- 최소 신장 트리
- BOJ
- Topological Sorting
- MST
- Brute Force
- 너비 우선 탐색
- 집합과 맵
- TEXT
- greedy
- 그리디
- Sorting
- set
- 백트래킹
- Python
- 파이썬
- 시뮬레이션
- Implementation
- DP
- 브루트포스
- 구현
- backtracking
- math
- Simulation
- 위상 정렬
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | |
| 7 | 8 | 9 | 10 | 11 | 12 | 13 |
| 14 | 15 | 16 | 17 | 18 | 19 | 20 |
| 21 | 22 | 23 | 24 | 25 | 26 | 27 |
| 28 | 29 | 30 | 31 |
