개발자 미니민의 개발스터디

코드업[CodeUp] 1097번 풀이

by mini_min

코드업[CodeUp] 1097번 풀이 : 바둑알 십자 뒤집기

https://codeup.kr/problem.php?id=1097

 

[기초-2차원배열] 바둑알 십자 뒤집기(설명)

C언어기초100제v1.2 : @컴퓨터과학사랑, 전국 정보(컴퓨터)교사 커뮤니티/연구회 - 학교 정보(컴퓨터)선생님들과 함께 수업/방과후학습/동아리활동 등을 통해 재미있게 배워보세요.  - 모든 내용

codeup.kr

package codeup;

import java.util.Scanner;

public class _1097 {

	public static void main(String[] args) {
		// 십자 뒤집기
		Scanner sc = new Scanner(System.in);
		int [][]a = new int[20][20];
		
		// 십자 바둑판
		for(int i=0; i<19; i++) {
			for(int j=0; j<19; j++) {
				int pre = sc.nextInt();
				a[i][j] = pre;
			}
		}
		
		int count = sc.nextInt();
		
		for(int i=1; i<=count; i++) {
			int x = sc.nextInt()-1;
			int y = sc.nextInt()-1;
				
				//가로 (한줄) 바꾸기. y축은 고정
				for(int j=0; j<19; j++) {
					if(a[j][y]==0){
						a[j][y] = 1;
					}else {
						a[j][y] = 0;
					}
				}
				
				//세로 바꾸기
				for(int j=0; j<19; j++) {
					if(a[x][j]==0){
						a[x][j] = 1;
					}else {
						a[x][j] = 0;
					}
				}
				
		}
	
		for(int i=0; i<19; i++) {
			for(int j=0; j<19; j++) {
				System.out.print(a[i][j]+ " ");
			}
			System.out.println();
		}

		sc.close();

	}

}

 

하나 하나 차근차근 풀어나면 답이 보인다.

한 번에 완성하려고 하지말고, 필요한 부분 하나씩 구현하기

 

 

블로그의 정보

개발자 미니민의 개발로그

mini_min

활동하기