다희의 코딩 성장일기

[정올 Begginer_Coder - 도형만들기1] 1856.숫자 사각형2_자바JAVA 본문

Algorithm/정올

[정올 Begginer_Coder - 도형만들기1] 1856.숫자 사각형2_자바JAVA

ilmiodiario 2020. 12. 9. 22:37

 

문제 : 정올 1856.숫자 사각형2

 

 

입출력

 

 

 

풀이

2차원 배열 안 쓰고 하나씩 출력하는 형태로 품.

홀수행일 경우엔 거꾸로 숫자를 출력해야하므로 

홀수행의 시작숫자를 temp에 저장해서 출력함.

자세한건 주석참고

 

JAVA코드

 

package 도형만들기1;

import java.util.Scanner;

public class 숫자사각형2_1856 {

	public static void main(String[] args) {

		Scanner sc = new Scanner(System.in);
		int n = sc.nextInt(); // 사각형의 높이n
		int m = sc.nextInt(); // 사각형의 너비 m

		int number = 1;
		int temp = 0; //홀수행 시작점 관리할 변수
		for (int i = 0; i < n; i++) { // n행 만큼 반복
			if (i % 2 == 1) { // 행이 홀수행일 경우
				temp = number + m -1; //홀수행 시작 수
				number = number+m; //짝수행 시작수
			}
			for (int j = 0; j < m; j++) { // m열 만큼 반복
				if(i%2 == 1) { //홀수행일때
					System.out.print(temp + " ");
					temp--;
					continue;
				}
				System.out.print(number + " ");
				number++;

			}
			System.out.println(); // 줄바꿈
		}
	}

}

 

 

느낀점

설계하고 풀기.. 이렇게 쉬운 기초도 바로 코딩으로 하니까 버벅였다.. 기초 열심히하자!

 

Comments