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

(자바) SWEA 15868. XOR 2차원 배열

by son_i 2023. 5. 20.
728x90

SW Expert Academy

 

SW Expert Academy

SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!

swexpertacademy.com

음 이거 전에 풀었었나 ?

암튼 더 깔끔하게 풀었다.

자바 지원이 안 돼서 테스트 케이스 일단 맞는 건 확인 !

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;

public class Solution {
    public static void main(String[] args) throws IOException {
        
    	BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
    	
    	int T = Integer.parseInt(br.readLine());
    	
    	for(int i=1;i<=T;i++) {
    		StringBuilder sb = new StringBuilder();
    		StringTokenizer st = new StringTokenizer(br.readLine());
    		int N = Integer.parseInt(st.nextToken());
    		int M = Integer.parseInt(st.nextToken());
    		int arr[][] = new int[N][M];
    		boolean a[] = new boolean[N];
    		boolean b[] = new boolean[M];
    		
    		for(int j=0;j<N;j++) {
    			String str = br.readLine();
    			for(int k=0;k<str.length();k++) {
    				arr[j][k] = Character.getNumericValue(str.charAt(k));
    			}
    		}
    		a[0] = true;
    			for(int k=0;k<M;k++) { //b배열을 다 채움.
    				if(arr[0][k] == 0)
    					b[k] = a[0];
    				else//1이면 ab요소 서로 달라야함.
    					b[k] = !a[0];
    			}
    			for(int j=1;j<N;j++) {//arr의 맨 오른쪽 끝 빼고 다 비교해나감.
    				for(int k=0;k<M-1;k++) {
    					if(arr[j][k] == 0) {
    						if(b[k] == true) a[j] = true;
    						else a[j] = false;
    					}
    					else {
    						if(b[k] == true) a[j] = false;
    						else a[j] = true;
    					}
    				}
    			}
    			if(arr[N-1][M-1] == 0) {
    				if(a[N-1] == b[M-1]) sb.append("yes");
    				else sb.append("no");
    			}
    			else {
    				if(a[N-1] == b[M-1]) sb.append("no");
    				else sb.append("yes");
    			}
    		System.out.println("#"+i+" "+sb);
    	}
    }
}
728x90

'알고리즘 > Samsung' 카테고리의 다른 글

(자바) SWEA 11445. 무한 사전  (0) 2023.05.20
정렬 알고리즘  (0) 2023.05.18
SW 14413. 격자판 칠하기 (BFS)  (1) 2023.05.14
SW 1288. 새로운 불면증 치료법  (0) 2023.05.05
SW 1928. Base64 Decoder  (0) 2023.05.05