BOJ: 18883 N M 찍기
문제
자연수 \(N, M\)이 주어졌을 때, \(1\)부터 \(N \time M\)까지 출력 형식대로 출력해보자.
입력
첫째 줄에 공백 한 칸으로 구분한 \(N, M\)이 주어진다. 두 수는 \(1,000\)보다 작거나 같은 자연수이다.
출력
총 \(N\)개의 줄을 출력해야 한다. 각 줄에는 \(M\)개의 정수를 공백 한 칸으로 구분해 출력해야 한다. \(1\)번 줄에는 \(1\)부터 \(M\)까지, \(2\)번 줄에는 \(M + 1\) 부터 \(2 \times M\)까지, \(..., N\)번 줄에는 \((N - 1) \times M + 1\)부터 \(N \times M\)까지 출력해야 한다.
모든 줄의 시작과 끝에 공백이 있으면 안되고, 모든 줄은 줄바꿈(\n)으로 끝나야 한다.
예제 입력 1
3 4
예제 출력 1
1 2 3 4
5 6 7 8
9 10 11 12
코드
#include <bits/stdc++.h>
using namespace std;
int main(void) {
ios_base::sync_with_stdio(false); cin.tie(NULL);
int n, m;
int k = 1;
cin>>n>>m;
for(int i=1; i<=n; i++) {
for(int j=1; j<=m; j++) {
if(j == m)
cout<<k++;
else
cout<<k++<<' ';
}
cout<<'\n';
}
return 0;
}
댓글남기기