RiseOJ는 solved.ac와 제휴 관계가 없습니다. 티어 아이콘 © solved.ac. solved.ac
포럼
R02135

지그재그 스캐너

Bronze III 브론즈 III
난이도
2s
시간 제한
256MB
메모리 제한
0
맞았습니다!!
0
제출 수
0.0%
정답률
레이팅

의견: 0

설명

\(N\)\(M\)열의 숫자 격자를 지그재그로 훑어 읽는 스캐너가 있다. 읽는 순서는 왼쪽 위 칸 \((1,1)\)에서 시작하여, 대각선(행 번호와 열 번호의 합이 같은 칸들)을 따라 위로 올라가는 방향과 아래로 내려가는 방향을 번갈아 가며 훑는다.

구체적으로, \((1,1)\)부터 시작해 오른쪽 위로 올라가다 경계를 만나면 다음 대각선으로 넘어가 왼쪽 아래로 내려가고, 다시 경계를 만나면 위로 올라가는 식으로 모든 칸을 정확히 한 번씩 읽는다. 예제를 참고하여 읽히는 순서를 정확히 파악하여라.

스캐너가 읽는 순서대로 격자의 값을 모두 출력하여라.

제약

\(1 \le N, M \le 50\), 각 칸의 값은 \(0\) 이상 \(999\) 이하의 정수이다.

입력 형식

첫째 줄에 \(N\)\(M\)이 주어진다.
다음 \(N\)개의 줄에 각각 그 행의 \(M\)개의 정수가 공백으로 구분되어 주어진다.

출력 형식

지그재그 순서로 읽은 값들을 공백으로 구분하여 한 줄에 출력한다.

예제 1
입력
3 3
1 2 3
4 5 6
7 8 9
출력
1 2 4 7 5 3 6 8 9
설명

지그재그 순서로 읽으면 \(1, 2, 4, 7, 5, 3, 6, 8, 9\)이다.

예제 2
입력
2 2
1 2
3 4
출력
1 2 3 4
설명

\(2\times2\) 격자는 \(1, 2, 3, 4\) 순으로 읽힌다.

문제 정보

riseoj 작성

출처 Original

평가 및 의견

지그재그 스캐너

개요
출제자 난이도 Bronze III 브론즈 III 의견 0 / 50 공개 집계 (커뮤니티 난이도, 주요 주제, 품질)는 의견이 충분히 모이면 공개됩니다.

Log in to rate problems.

개별 의견

아직 의견이 없습니다. 자격이 된다면 위 양식에서 가장 먼저 평가해 보세요.

풀이 제출

지그재그 스캐너

게스트로 둘러보고 있습니다. 로그인하면 풀이를 제출하고 진행 상황을 확인할 수 있습니다. 로그인하고 제출하기
공개
C++20 Tab 들여쓰기 · Ctrl+/ 주석 토글 · Enter 자동 들여쓰기
1 1 1 0 공백: 4 · UTF-8