Layer7

-Layer7 백준 공넣기

KSJ._.seven11 2023. 4. 9. 17:12

 여기서 중요한 점은 공백으로 구분해 출력한다는 점이다.

#include <stdio.h>

int main() {
    int a, b;
    scanf("%d %d", &a, &b); // a: 바구니의 개수, b: 공을 던진 횟수

    int basket[a+1]; // 각 바구니에 들어있는 공의 개수를 저장할 배열
    for(int c=0; c<=a; c++) {
        basket[c] = 0; // 모든 바구니를 비움
    }

    for(int d=0; d<b; d++) {
        int start, end, score;
        scanf("%d %d %d", &start, &end, &score); // start: 시작 위치, end: 끝 위치, score: 공의 개수

        for(int e=start; e<=end; e++) {
            basket[e] = score; // 시작 위치부터 끝 위치까지의 바구니에 공의 개수를 더함
        }
    }

    for(int f=1; f<=a; f++) {
        printf("%d ", basket[f]); // 각 바구니에 들어있는 공의 개수 출력
    }

    return 0;
}

}

 scanf 를 통해 바구니의 개수와 공을 던진 횟수를 입력 받는다.

 

 이에 따라 배열을 구축한다.

 이후 start,  end , score 변수를 입력받고 for 문을 통해 시작 위치부터 끝 위치까지의 바구니의 공의 개수를 계산하는 작업을 한다.

 이후 basket[f]부분을 연속해서 출력함으로서 공의 개수를 출력할 수 있다.

 여기서 공백이 이썽야 하기에 "%d + [공백]" 공간이 있어야 함을 주의해야 한다 !

 

야호 성공이다 !