공 넣기 (10810) 풀이

2023. 6. 14. 13:18BaekJoon/1차원 배열

문제내용

사용자에게 바구니 개수 N, 테스트 개수 M을 각 시작 바구니 i, 끝 바구니 j, 공 번호 k를 입력받아 해당 바구니에 공을 넣은 결과를 출력하는 문제이다.


풀이

import java.util.Scanner;

public class Main {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int m = sc.nextInt();
		int n = sc.nextInt();
		int[] result = new int[m];
		
		for(int cnt = 0; cnt < n; cnt++){
			int i = sc.nextInt();
			int j = sc.nextInt();
			int k = sc.nextInt();
			for(int cnt2 = i-1; cnt2 < j; cnt2++){
				result[cnt2] = k;
			}
		}
		
		for(int num : result){
			System.out.print(num+" ");
		}
		
	}
}

사용자에게 정수를 입력받기 위해 Scanner를 사용해 m,n,i,j,k를 입력받았다.

for문에서 i번째부터 j번째까지 k번 공을 넣어주었다.

마지막으로 for-each문을 사용해 결과를 출력했다.


겪었던 문제

import java.util.Scanner;

public class Main {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int m = sc.nextInt();
		int n = sc.nextInt();
		int[] result = new int[m];
		
		for(int cnt = 0; cnt < n; cnt++){
			int i = sc.nextInt();
			int j = sc.nextInt();
			int k = sc.nextInt();
			for(int cnt2 = i-1; cnt2 < j; cnt2++){
				result[cnt2] = k;
			}
		}
		
		for(int num : result){
			System.out.println(num+" ");
		}
		
	}
}

위의 코드로 했더니 출력 형식이 잘못되었습니다가 반환됐다. 이유는 마지막 출력문에서 print가 아닌 println으로 개행이 되고 있었기 때문이다. 

코드 한줄로 예기치 못한 에러가 나는 경우들이 종종 있다. 확인 또 확인은 필수인 것을 한번 더 느꼈다....😂

'BaekJoon > 1차원 배열' 카테고리의 다른 글

과제 안 내신 분..? (5597) 풀이  (0) 2023.06.14
공 바꾸기 (10813) 풀이  (0) 2023.06.14
최댓값 (2562) 풀이  (0) 2023.06.14
최소, 최대 (10871) 풀이  (0) 2023.06.14
X보다 작은 수 (10871) 풀이  (0) 2023.06.14