오늘이라도

[프로그래머스, 1878] 나머지 한 점 100/100 본문

개발 공부/코딩테스트

[프로그래머스, 1878] 나머지 한 점 100/100

upcake_ 2021. 11. 8. 23:14
반응형

문제 https://programmers.co.kr/learn/courses/18/lessons/1878

 

내 풀이

import java.util.ArrayList;
import java.util.Collections;

class Solution {
    public int[] solution(int[][] v) {
        //4점의 좌표 A(a1, b1), B(a2, b1), C(a1, b2), D(a2, b2)
        //a1이 2개, b2가 2개 => (x좌표 1개인 숫자, y좌표 1개인 숫자)
        int x = 0;
        int y = 0;
        for(int i = 0; i < v.length; i++) {
            //x좌표 구하기
            x = getSoleNumber(v, 0);
            
            //y좌표 구하기
            y = getSoleNumber(v, 1);
        }
        
        int[] answer = {x, y};

        return answer;
    }
    
    //갯수가 1개인 숫자를 반환
    public int getSoleNumber(int[][] coords, int index) {
        ArrayList<Integer> list = new ArrayList<>(); 
        int soleNum = 0;
        
        //반복문으로 좌표에 쓰인 자연수 3개 구하기
        for(int i = 0; i < coords.length; i++) {
            list.add(coords[i][index]);
        }
        
        //빈도 검사 결과가 1개인 숫자를 변수에 저장 후 반환
        for(Integer j : list) {
            if (Collections.frequency(list, j) == 1) {
                soleNum = j;
                break;
            };
        }
        
        return soleNum;
    }
}

 

채점 결과

반응형