반응형
https://www.acmicpc.net/problem/10093
10093번: 숫자
두 양의 정수가 주어졌을 때, 두 수 사이에 있는 정수를 모두 출력하는 프로그램을 작성하시오.
www.acmicpc.net
풀이 : subtask라는 재밌는 장치가 존재하였다.
c/c++이라면 10^15로 범위 제한인 것을 보자마자 long long 자료형을 사용해야한다는 것을 생각해내야한다.
(int는 약 21억까지의 수를 다루니 그보다 10^15는 그 보다 훨씬 큰 수이다)
+long long 조차 감당이 안될 큰 수라면 string으로 다뤄야한다. (Python을 쓰자..)
위 사실만 알면 쉽게 풀리는 문제이다.
내 정답코드
#include <bits/stdc++.h>
using namespace std;
int main() {
ios::sync_with_stdio(0);
cin.tie(0);
long long A, B;
cin >> A >> B;
if (B >= A) {
if (A == B)
cout << 0;
else {
cout << B - A - 1 << '\n';
for (long long i = A + 1; i < B; i++) {
cout << i << ' ';
}
}
}
else if (A > B) {
cout << A - B - 1 << '\n';
for (long long i = B + 1; i < A; i++) {
cout << i << ' ';
}
}
else {
cout << 0;
}
}
반응형
'Baekjoon' 카테고리의 다른 글
[C++] 10808번: 알파벳 개수 (0) | 2024.02.21 |
---|---|
[C++]백준 10804번: 카드 역배치 (1) | 2024.02.08 |
[C++]백준 2309번: 일곱 난쟁이 (1) | 2024.02.05 |
[C] 백준 10829번 : 이진수 변환 (0) | 2023.08.10 |
[C] 백준 2750번 : 수 정렬하기 (1) | 2023.02.02 |