풀이
import java.util.Scanner;
public class Main {
public static void main(String[] args){
int count = 0, damage = 0, plus = 0, answer = 0;
int[] arr;
Scanner scan = new Scanner(System.in);
count = scan.nextInt(); // 팀 수
damage = scan.nextInt(); // 손상된 카약을 가진 팀
plus = scan.nextInt(); // 여분 카약을 가진 팀
arr = new int[count];
// 기본 카약 개수 1로 초기화
for(int i=0; i<count; i++){
arr[i] = 1;
}
// 카약 증감
for(int i=0; i<damage+plus; i++){
if(i<damage){
arr[scan.nextInt()-1] -= 1;
}else{
arr[scan.nextInt()-1] += 1;
}
}
for(int i=0; i<count; i++){
if(arr[i] == 2){
if(i==0){
if(arr[i+1] == 0){
arr[i] = 1;
arr[i+1] = 1;
}
}else if(i==count-1){
if(arr[i-1] == 0){
arr[i-1] = 1;
arr[i] = 1;
}
}else{
if(arr[i-1] == 0){
arr[i-1] = 1;
arr[i] = 1;
}else if(arr[i+1] == 0){
arr[i+1] = 1;
arr[i] = 1;
}
}
}
}
for(int i=0; i<count; i++){
if(arr[i] == 0){
answer++;
}
}
System.out.println(answer);
}
}
'코딩 문제 > 백준' 카테고리의 다른 글
백준 - 5568번 (0) | 2021.03.15 |
---|---|
백준 - 4796번 (0) | 2021.03.15 |
백준 - 2890번 (0) | 2021.03.15 |
백준 - 2504번 (0) | 2021.03.15 |
백준 - 1780번 (0) | 2021.03.15 |