https://www.acmicpc.net/problem/17173
풀이: 2 ~ n 까지 수들 중 ki 중 하나의 배수인 수를 모두 찾아 더한 후 출력한다.
코드: 사용언어 : c++
1 2 3 4 5 6 7 8 9 10 11 12 13 14 #include <iostream>using namespace std; int n, m, i, t, s = 0, a[1001]; int main() { cin >> n >> m; for (i = 0; i < m; i++) cin >> a[i]; for (i = 2; i <= n; i++) for (t = 0; t < m; t++) if (!
https://www.acmicpc.net/problem/2460
풀이: 기차에 사람이 가장 많을 때의 사람 수를 출력한다.
코드: 사용언어 : c++
1 2 3 4 5 6 7 8 9 10 #include <iostream>using namespace std; int a, b, i, s = 0, t = 0; int main() { for (i = 0; i < 10; i++) { cin >> a >> b; s += b - a, t = t < s ? s : t; } cout << t << endl; }
https://www.acmicpc.net/problem/5532
풀이: 국어를 풀어야 하는 날짜와 수학을 풀어야 하는 날짜를 각각 a, b라고 했을 때,
a, b 중 더 높은 값을 방학일에서 뺀다면, 놀 수 있는 날의 최댓값이 된다.
코드: 사용언어 : c
1 2 3 4 5 main(n,a,b,c,d){ scanf("%d%d%d%d%d",&n,&a,&b,&c,&d); a=a/c+(a%c?1:0),b=b/d+(b%d?1:0); printf("%d",n-(a<b?b:a)); }
https://www.acmicpc.net/problem/15657
풀이: 수열을 배열에 저장한다.
비내림차순으로 출력해야 하므로 배열을 정렬한다.
현재 배열에 있는 수를 새로운 배열에 옮겨 담는다.
옮긴 수가 M개가 된다면 출력하고, 다른 수를 담는다.
모든 수를 사전 순으로 출력했다면 종료한다.
코드: 사용언어 : c++
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 #include <iostream>#include <algorithm>using namespace std; int n, m, a[8], b[8]; void N(int x, int y) { if (!
https://www.acmicpc.net/problem/15989
풀이: a[n][0] : 3을 포함하지 않고, 2를 1개 이상 포함한 n 을 만드는 경우의 수
a[n][1] : 3을 1개 이상 포함한 n을 만드는 경우의 수
a[n][0] = a[n - 2][0] + 1
-> 2를 1개 이상 포함하여 n - 2 를 만드는 경우의 수에 2를 하나씩 더 붙힌 것
+ 1로만 이루어진 수에 2를 하나 붙힌 것)
a[n][1] = a[n - 3][1] + a[n - 3][0] + 1
-> 3을 3개 이상 포함하여 n - 3 을 만드는 경우의 수에 3을 하나씩 붙힌 것