본문 바로가기
알고리즘/문제

[백준] 18883. N M 찍기 <C++>

by 코드 이야기 2020. 4. 27.
728x90

www.acmicpc.net/problem/18883

 

18883번: N M 찍기

총 N개의 줄을 출력해야 한다. 각 줄에는 M개의 정수를 공백 한 칸으로 구분해 출력해야 한다. 1번 줄에는 1부터 M까지, 2번 줄에는 M+1부터 2×M까지, ..., N번 줄에는 (N-1)×M+1부터 N×M까지 출력해야

www.acmicpc.net

 

이 문제는 입출력 연습에 좋은 문제인 것 같다. 

 

#include <iostream>
using namespace std;

int main(){
  int n, m, cnt=1;  //cnt는 1부터 출력된다.
  cin>>n>>m;

  for(int i=0; i<n; i++)
  {
    for(int j=0; j<m; j++)
    {
      cout<<cnt++;	//1)

      if(m-1!= (j))	//2)
        cout<<" ";
    }
  
    cout<<"\n";		//3)
  }
}

1) cnt를 출력해주고 하나 증가시킨다.

 

 

2) 출력의 각 줄에 마지막에는 공백이 없다. m-1 즉, 각 줄의 마지막이 아닌 경우에만 공백을 출력한다.

 

 

3) 각 줄을 끝까지 출력한 후에는 줄바꿈을 해준다.

728x90

댓글