μΌ | μ | ν | μ | λͺ© | κΈ | ν |
---|---|---|---|---|---|---|
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 |
- DFS
- skala
- skala1κΈ°
- κΉμ΄μ°μ νμ
- μ°μ μμν
- λμ κ³νλ²
- νλ‘κ·Έλλ¨Έμ€
- λλΉμ°μ νμ
- 그리λ
- DP
- λ¨Έμ§μνΈ
- κ·Έλννμ
- BFS
- κ·Έλν
- ν°μ€ν 리μ±λ¦°μ§
- μν
- ꡬν
- db
- μκ³ λ¦¬μ¦
- νμ΄μ¬
- λ°μ΄ν°λ² μ΄μ€
- λ³ν©μ λ ¬
- λμ ν©
- LIS
- SQL
- λ€μ΄λλ―Ήνλ‘κ·Έλλ°
- μ€λΈμ
- λ°±μ€
- μμνμ
- μ λ ¬
- Today
- Total
πππ°πΈ π£πΆπ΅ π΄π΅π¦π’π₯πΊ
[λ°±μ€] 1149λ²: RGB거리 - C++ λ³Έλ¬Έ
λ¬Έμ
RGB거리μλ μ§μ΄ Nκ° μλ€. 거리λ μ λΆμΌλ‘ λνλΌ μ μκ³ , 1λ² μ§λΆν° Nλ² μ§μ΄ μμλλ‘ μλ€.
μ§μ λΉ¨κ°, μ΄λ‘, νλ μ€ νλμ μμΌλ‘ μΉ ν΄μΌ νλ€. κ°κ°μ μ§μ λΉ¨κ°, μ΄λ‘, νλμΌλ‘ μΉ νλ λΉμ©μ΄ μ£Όμ΄μ‘μ λ, μλ κ·μΉμ λ§μ‘±νλ©΄μ λͺ¨λ μ§μ μΉ νλ λΉμ©μ μ΅μκ°μ ꡬν΄λ³΄μ.
- 1λ² μ§μ μμ 2λ² μ§μ μκ³Ό κ°μ§ μμμΌ νλ€.
- Nλ² μ§μ μμ N-1λ² μ§μ μκ³Ό κ°μ§ μμμΌ νλ€.
- i(2 ≤ i ≤ N-1)λ² μ§μ μμ i-1λ², i+1λ² μ§μ μκ³Ό κ°μ§ μμμΌ νλ€.
μ λ ₯
첫째 μ€μ μ§μ μ N(2 ≤ N ≤ 1,000)μ΄ μ£Όμ΄μ§λ€. λμ§Έ μ€λΆν° Nκ°μ μ€μλ κ° μ§μ λΉ¨κ°, μ΄λ‘, νλμΌλ‘ μΉ νλ λΉμ©μ΄ 1λ² μ§λΆν° ν μ€μ νλμ© μ£Όμ΄μ§λ€. μ§μ μΉ νλ λΉμ©μ 1,000λ³΄λ€ μκ±°λ κ°μ μμ°μμ΄λ€.
μΆλ ₯
첫째 μ€μ λͺ¨λ μ§μ μΉ νλ λΉμ©μ μ΅μκ°μ μΆλ ₯νλ€.
λμ κ³νλ²μ μ΄μ©νλ λ¬Έμ .
μμ μ νλ€κ³Ό λ€λ₯Ό κ² μμ΄ νλ©΄ λλ€.
κ° μ§μ R, G, B λΉμ©λ³λ‘ ν©μ ꡬν λ€ κ·Έ μ€ κ°μ₯ μμ κ°μ΄ μ΄ λΉμ©μ΄ λλ€.
μ΄ λ, iλ²μ§Έ μ§μ μμ i - 1λ², i + 1λ² μ§μ μκ³Ό κ°μ§ μμμΌ νλ 쑰건λλ¬Έμ
- iλ²μ§Έ μ§μ RλΉμ©μ (i - 1)λ²μ§ΈκΉμ§μ GλΉμ©κ³Ό BλΉμ©μ ν© μ€ λ μμ κ°
- iλ²μ§Έ μ§μ GλΉμ©μ (i - 1)λ²μ§ΈκΉμ§μ RλΉμ©κ³Ό BλΉμ©μ ν© μ€ λ μμ κ°
- iλ²μ§Έ μ§μ BλΉμ©μ (i - 1)λ²μ§ΈκΉμ§μ RλΉμ©κ³Ό GλΉμ©μ ν© μ€ λ μμ κ°
μ κ°κ° λν΄μ£Όλ©΄ λλ€.
μ΄λ₯Ό μμΌλ‘ νννλ©΄ λ€μκ³Ό κ°λ€.
sum[i][R] = min(sum[i - 1][G], sum[i - 1][B]) + color[i][R]
sum[i][G] = min(sum[i - 1][R], sum[i - 1][B]) + color[i][G]
sum[i][B] = min(sum[i - 1][R], sum[i - 1][G]) + color[i][B]
μ½λ
#include <cstdio>
#define MAX 1001
int N;
int color[MAX][3];
// [i][0] : R, [i][1] : G, [i][2] : B
int DP();
int min(int a, int b) {
return (a < b ? a : b);
}
int main(void) {
scanf("%d", &N);
for (int i = 0; i < N; i++) {
for(int j = 0; j < 3; j++) {
scanf("%d", &color[i][j]);
}
}
printf("%d\n", DP());
return 0;
}
int DP() {
int sum[MAX][3];
for(int i = 0; i < 3; i++) {
sum[0][i] = color[0][i];
}
for(int i = 1; i < N; i++) {
sum[i][0] = min(sum[i - 1][1], sum[i - 1][2]) + color[i][0];
sum[i][1] = min(sum[i - 1][0], sum[i - 1][2]) + color[i][1];
sum[i][2] = min(sum[i - 1][0], sum[i - 1][1]) + color[i][2];
}
int result = min(min(sum[N - 1][0], sum[N - 1][1]), sum[N - 1][2]);
return result;
}
'μ½λ©ν μ€νΈ μ€λΉ > λ°±μ€' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[λ°±μ€] 12852λ²: 1λ‘ λ§λ€κΈ° 2 - C++ (0) | 2022.07.06 |
---|---|
[λ°±μ€] 1003λ²: νΌλ³΄λμΉ ν¨μ - C++ (0) | 2022.07.05 |
[λ°±μ€] 1024λ²: μμ΄μ ν© - C++ (0) | 2022.02.23 |
[λ°±μ€] 1788λ²: νΌλ³΄λμΉ μμ νμ₯ - C++ (0) | 2022.02.21 |
[λ°±μ€] 3085λ²: μ¬ν κ²μ - C++ (0) | 2022.02.18 |