https://www.acmicpc.net/problem/10820
풀이: [C++]대소문자, 숫자 구분함수 참고
따로 종료 조건이 없으므로 EOF 처리를 해주자. 코드: 사용언어 : c++
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 #include <iostream>#include <string>using namespace std; int main() { string s; while (getline(cin, s)) { int a = 0, b = 0, c = 0, d = 0; for (char i : s) if (islower(i)) a++; else if (isupper(i)) b++; else if (isdigit(i)) c++; else d++; printf("%d %d %d %d\n", a, b, c, d); } }
https://www.acmicpc.net/problem/10992
풀이: 첫줄에 1개, 마지막줄에 2 * N - 1개
i번째 줄에는 N - i 칸 띄고, “” 한개, 2 * i - 1 칸 띄고, “” 한개
출력한다.
코드: 사용언어 : c++
1 2 3 4 5 6 7 8 9 10 11 12 13 #include <iostream>using namespace std; int N, i, t; int main() { cin >> N; for (i = 0; i < N; i++) { for (t = 1; t < N - i; t++) cout << " "; cout << "*"; for (t = 0; t < 2 * i - 1; t++) printf("%s", i == N - 1 ?
https://www.acmicpc.net/problem/11728
풀이: n + m 만큼의 숫자를 받아온다.
받아온 숫자를 정렬하여 출력한다.
cin, cout 은 시간초과가 나므로 주의하자. 코드: 사용언어 : c++
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 #include <iostream>#include <queue>using namespace std; int n, m; int main() { scanf("%d%d",&n,&m); n += m; priority_queue<int, vector<int>, greater<int>> a; while (n--) { scanf("%d",&m); a.push(m); } while (!a.empty()) printf("%d ",a.top()), a.pop(); printf("\n"); }