본문 바로가기
CodingTest

코딩테스트 입문 - Day 20

by Jiwon_Loopy 2025. 5. 5.
반응형

직사각형 넓이 구하기


class Solution {
    public int solution(int[][] dots) {
        int answer = 0;
        int o[] = dots[0];
        for(int i = 1; i< dots.length; i++){
            if(o[0] != dots[i][0] && o[1] != dots[i][1]){
                answer = (o[0] - dots[i][0]) * (o[1] - dots[i][1]);
            }
        }
        return Math.abs(answer);
    }
}

캐릭터의 좌표


class Solution {
    public int[] solution(String[] keyinput, int[] board) {
        int[] answer = new int[2];
         int boundw = board[0] /2;
         int boundh = board[1] /2;
        for(String move : keyinput){
            switch(move){
                case "left":
                    answer[0] -= 1;
                    if(answer[0] < -boundw){
                        answer[0] = -boundw;
                    }
                    break;
                case "right":       
                    answer[0] += 1;
                     if(answer[0] > boundw){
                         answer[0] = boundw;
                     }
                    break;
                case "up":
                    answer[1] += 1;
                    if(answer[1] > boundh){
                        answer[1] = boundh;     
                    }
                    break;
                default :
                    answer[1] -= 1;
                    if(answer[1] < -boundh){
                        answer[1] = -boundh;
                    }
                    break;
            }
            System.out.print(answer[0] + " " + answer[1] + " ");
           
        }
        return answer;
    }
}

최댓값 만들기 (2)


import java.util.*;

class Solution {
    public int solution(int[] numbers) {
        Arrays.sort(numbers);
        int a = numbers[numbers.length-1] * numbers[numbers.length-2];
        int b = numbers[0] * numbers[1];
        return Math.max(a,b);
    }
}

다항식 더하기


import java.util.*;

class Solution {
    public String solution(String polynomial) {
        String[] arr = polynomial.split(" ");
        int[] answer = new int[2];
        for(int i = 0; i< arr.length; i+=2){
            if(arr[i].contains("x")){
                String s = arr[i].replace("x","");
                if(s.equals("")){s = "1";}
                answer[0] += Integer.parseInt(s);
                continue;
            }
            answer[1] += Integer.parseInt(arr[i]);
        }
        if(answer[0] == 0){
            return answer[1] + "";
        }else if(answer[0] == 1){
            if(answer[1] == 0){
                return "x";
            }
            return "x"+ " + " + answer[1];
        }
        else if(answer[1] == 0){
            return answer[0] + "x";
        }
        return answer[0]+ "x" + " + " + answer[1];
    }
}
728x90
반응형