문제
두 양의 정수가 주어졌을 때, 두 수 사이에 있는 정수를 모두 출력하는 프로그램을 작성하시오.
입력
두 정수 A와 B가 주어진다. (1 ≤ A, B ≤ 1015, A와 B의 차이는 최대 100,000)
출력
첫째 줄에 두 수 사이에 있는 수의 개수를 출력한다.
둘째 줄에는 두 수 사이에 있는 수를 오름차순으로 출력한다.
풀이
어려운 문제는 아니지만 처음에 실패를 2~3번해서 헤맸던 문제. 우선 제한 조건에 100,000까지 받을 수 있다했으므로 정수값인 int가 아닌 long로 선언해주어야 한다. 그리고 a와 b가 같은경우, a가 b보다 큰경우를 고려해서 반복문을 써주면 완료되는 문제. ㅇㅅㅇ
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
|
class Bakjoon {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
long a=sc.nextLong();
long b=sc.nextLong();
if(a>b) {
System.out.println(a-b-1);
for(long i=b+1;i<a;i++) {
System.out.print(i+" ");
}
}
if(b>a) {
System.out.println(b-a-1);
for(long i=a+1;i<b;i++) {
System.out.print(i+" ");
}
}
if(a==b) {
System.out.println(0);
}
}
}
|
https://www.acmicpc.net/problem/10093
반응형
'Algorithms > BOJ[Java]' 카테고리의 다른 글
[백준/5988번] 홀수일까 짝수일까 [Java] (0) | 2019.12.09 |
---|---|
[백준/10669번] 오늘 날짜 [Java] (0) | 2019.12.09 |
[백준/5217번] 쌍의 합 (HSPC 2012) [Java] (0) | 2019.12.09 |
[백준/14624번] 전북대학교(2017 전북대학교 프로그래밍 경진대회) [Java] (0) | 2019.12.08 |
[백준/15552번] 빠른 A+B [Java] (1) | 2019.12.08 |