풀이
import java.util.Scanner;
import java.util.Arrays;
public class Main {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
int count = scan.nextInt();
int idx = 0, check = 0, answer = 0;
int start = 0, end = 0;
int[] arr = new int[count]; // 배열 초기화
// 배열에 담기
while(idx < count){
arr[idx] = scan.nextInt();
idx++;
}
Arrays.sort(arr); // 배열 정렬
int num = scan.nextInt(); // n 입력
// n보다 큰 수 찾기 및 동일값 찾기
for(int i=0; i<arr.length; i++){
if(arr[i] >= num){
if(arr[i] == num){ // 동일 값이 배열에 있다면
check = 1; // 체크
}
idx = i; // 인덱스 할당
break;
}
}
// 배열에 동일한 값이 없다면
if(check == 0){
if(idx != 0){
start = arr[idx-1] + 1;
}else{
start = 1;
}
end = arr[idx] - 1;
for(int i=start; i<=num; i++){
if(i<num){ // i < num 일 때
for(int j=num; j<=end; j++){
answer++;
}
}else{ // i = num 일 때
for(int j=i+1; j<=end; j++){
answer++;
}
}
}
}
System.out.println(answer);
}
}
'코딩 문제 > 백준' 카테고리의 다른 글
백준 - 1769번 (0) | 2021.03.15 |
---|---|
백준 - 1074번 (0) | 2021.03.15 |
백준 - 1037번 (0) | 2021.03.15 |
백준 - 1018번 (0) | 2021.03.15 |
백준 - 1010번 (0) | 2021.02.26 |