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 32 33 | #include <stdio.h> int main() { int n, m; scanf("%d %d", &n, &m); int line[51][2] = { 0 }; int min6 = 1000, min1 = 1000; for (int i = 0; i < m; i++) { scanf("%d %d", &line[i][0], &line[i][1]); if (min6 > line[i][0]) min6 = line[i][0]; if (min1 > line[i][1]) min1 = line[i][1]; } if (min6 > 6 * min1) min6 = 6 * min1; int rst1 = 0; rst1 += (n / 6) * min6; rst1 += (n % 6) * min1; int rst2; rst2 = (n / 6 + 1) * min6; if (rst1 < rst2) printf("%d", rst1); else printf("%d", rst2); } | cs |
'알고리즘 > 그리디 알고리즘' 카테고리의 다른 글
1080 행렬 (0) | 2019.06.23 |
---|---|
1541 잃어버린 괄호 (0) | 2019.06.23 |
1120 문자열 (심화-KMP) (0) | 2019.06.23 |
10610 30 (0) | 2019.06.22 |
2217 로프 (0) | 2019.06.22 |