https://www.acmicpc.net/problem/10824
풀이: A, B, C, D 를 각각 string으로 받아 붙힌 후
숫자로 변환하여 더해 출력한다.
stoi 는 int형식으로 각각 1,000,000 까지 가능 한 두 수를 붙힌다면 넘어가므로 stoll을 사용하자. 코드: 사용언어 : c++
1 2 3 4 5 6 7 8 #include <iostream>#include <string>using namespace std; string a,b,c,d; int main() { cin >> a >> b >> c >> d; cout << stoll(a + b) + stoll(c + d) << endl; }
https://www.acmicpc.net/problem/10797
풀이: 날짜의 일의 자리 숫자와 자동차의 일의 자리 숫자가 같다면 차량의 대수를 +1 해준다.
코드: 사용언어 : c++
1 2 3 4 5 6 7 8 9 10 11 #include <iostream>using namespace std; int n, m, i, s = 0; int main() { cin >> n; for (i = 0; i < 5; i++) { cin >> m; if (n == m) s++; } cout << s << endl; }
https://www.acmicpc.net/problem/10815
풀이: [C++]lower_bound, upper_bound 참고
cin, cout 은 시간초과가 날 수 있으므로 주의하자. 코드: 사용언어 : c++
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 #include <iostream>#include <algorithm>using namespace std; int n, m, i, k, a[500002]; int main() { cin >> n; for (i = 0; i < n; i++) cin >> a[i]; sort(a, a + n); cin >> m; while (m--) { cin >> k; if (*lower_bound(a, a + n, k) == k) cout << "1 "; else cout << "0 "; } cout << endl; }
https://www.acmicpc.net/problem/10974
풀이: [C++]순열 참고
cin, cout 은 시간초과가 날 수 있으므로 주의하자. 코드: 사용언어 : c++
1 2 3 4 5 6 7 8 9 10 11 12 13 #include <iostream>#include <vector>#include <algorithm>using namespace std; int n, i; vector<int> v; int main() { scanf("%d",&n); for (i = 1; i <= n; i++) v.push_back(i); do { for (int i : v) printf("%d ",i); printf("\n"); } while (next_permutation(v.begin(), v.end())); }