https://www.acmicpc.net/problem/1120
풀이: a 와 b의 (0번째 ~ a의 길이) 의 차이의 개수
a 와 b의 (1번째 ~ a의 길이) 의 차이의 개수
.
.
.
a 와 b의 ()(b의 길이 - a의 길이)번째 ~ a의 길이) 의 차이의 개수
중 가장 작은것을 출력한다.
코드: 사용언어 : c++
1 2 3 4 5 6 7 8 9 10 11 12 13 14 #include <iostream>using namespace std; int main() { int c = 51; string a, b; cin >> a >> b; for (int i = 0; i <= b.
https://www.acmicpc.net/problem/1158
풀이: K번째 사람을 출력한다.
K번째 사람을 배열에서 삭제한다.
삭제한 지점을 기준으로 K번째 사람을 출력한다.
반복한다.
코드: 사용언어 : c++
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 #include <iostream>#include <vector>using namespace std; int N, K, c; int main() { cin >> N >> K; vector<int> a; for (int i = 1; i <= N; i++) a.push_back(i); c = K - 1; cout << "<"; while (a.
https://www.acmicpc.net/problem/1159
풀이: 각 선수의 성의 첫글자를 확인한다.
a ~ z 까지의 배열 에서 첫글자에 해당하는 배열을 +1 해준다.
a~ z 까지 확인한다.
5명 이상인 글자는 출력한다.
만약, 출력한 글자가 없다면, “PREDAJA” 를 출력한다.
코드: 사용언어 : c++
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 #include <iostream>using namespace std; int N, a[26], b = 0, i = 26; int main() { cin >> N; while(N--) { string s; cin >> s; a[122 - s[0]]++; } while(i--) if (a[i] > 4) { b = 1; cout << char(122 - i); } if (!
https://www.acmicpc.net/problem/1182
풀이: N개의 정수로 이루어진 수열을 a라고 했을 때,
a의 부분수열을 모두 탐색하여 그 합이 S가 되는 갯수를 출력한다.
코드: 사용언어 : c++
1 2 3 4 5 6 7 8 9 10 11 12 13 #include <iostream>using namespace std; int N, S, a[22], s = 0; void B(int x, int y) { if (x > -1 && y == S) s++; while(++x < N) B(x, y + a[x]); } int main() { cin >> N >> S; for (int i = 0; i < N; i++) cin >> a[i]; B(-1, 0); cout << s << endl; }
https://www.acmicpc.net/problem/1197
풀이: 배열 v를 현재 만들어진 트리에 들어있는 노드들의 집합 이라고 하자.
시작할 때 배열 v에 1 하나만 넣고 시작한다.
배열 v를 모두 순회하여 현재 트리에서 뻗어갈 수 있고, 가중치가 가장 작은 간선을 찾는다.
간선을 연결 한 후 연결된 노드를 배열 v에 저장한다.
배열 v에 모든 정점이 들어올때까지 반복한다.
트리에 모든 가중치를 더해 출력한다.
코드: 사용언어 : c++
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 34 35 36 #include <iostream>#include <queue>#include <vector>using namespace std; typedef pair<int, int> P; int N, E, q, w, e, b[10002] = { 1,1 }; vector<priority_queue<P, vector<P>, greater<P>>> a; int main() { cin >> N >> E; a.