Informatica Online Judge

  눈 내리는 겨울밤 2 (L) [2202 / 089A]

Time Limit(Test case) : 500(ms)
Number of users who solved : 22   Total Tried : 41


The Champion of this Problem (C++) : gs18060 - 0ms / 243byte
My Best Submission (C++) : N/A

[koistudy.net (JKJeong 2018)]

Background

라인월드에 살던 경곽이가 이번에는 한 축의 길이가 5인 2차원 평면월드로 이사를 갔다.

이번에는 평면월드는 항상 축에 평행한 직사각형 형태로 눈이 내리고 내린 눈은 그 자리에 쌓인다.

만약 구간 (a, b), (c, d)에 눈이 내리면 a행 b열로부터 c행 d열까지 직사각형 영역에 눈이 쌓인다.

예를들어 크기가 5인 평면월드에 다음과 같이 눈이 2번 내렸다고 가정하자.

처음 내린 눈
구간 : (1, 1) ~ (2, 2) 적설량 : 3

두 번째 내린 눈
구간 : (2, 1) ~ (3, 3) 적설량 : 2

처음 월드의 상태는 다음과 같다.

0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0

처음 눈이 내린 후의 월드는 다음과 같다.

3 3 0 0 0
3 3 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0

두 번째 내린 눈

3 3 0 0 0
5 5 2 0 0
2 2 2 0 0
0 0 0 0 0
0 0 0 0 0

과 같이 쌓인다.

평면월드에 대한 정보와 눈이 내린 정보가 주어질 때, 마지막에 쌓인 모양을 출력하는 프로그램을 작성하시오.

Input

첫 번째 줄에 평면월드의 크기 n과 눈이 내린 횟수 q가 공백으로 구분되어 입력된다.

둘 째줄부터 q줄에 걸쳐서 눈이 내리는 구간의 시작과 끝을 나타내는 정수 a, b, c, d와 눈의 양을 나타내는 수 w가 공백으로 구분되어 입력된다.

[입력값의 정의역]
1 <= n <= 500
1 <= q <= 100,000
1 <= a <= c <= n
1 <= b <= d <= n
1 <= w <= 1,000,000

Output

평면월드에 쌓인 눈을 n행 n열로 공백으로 구분하여 출력한다.

IO Example

입력
5 2
1 1 2 2 3
2 1 3 3 2

출력
3 3 0 0 0
5 5 2 0 0
2 2 2 0 0
0 0 0 0 0
0 0 0 0 0

Submit : [C/C++] | [C++11] | [Obj-C] | [Java] | [Python]
Prob Analysis : [Problem Statistics] | [Solution]