📌Back-End/프로그래머스

Java 프로그래머스 코딩테스트 입문 Day 17 문자열, 수학, 조건문, 배열, 사칙연산

구 일 2024. 7. 10. 22:01
728x90
반응형

 

숫자 찾기

프로그래머스 숫자 찾기 자바

 

 

/**
 * 코딩테스트 입문 Day 17 문자열, 수학, 조건문, 배열, 사칙연산
 * 숫자 찾기
 */
public class Main1 {
    public static void main(String[] args) {
        System.out.println(solution(29183, 1));
        System.out.println(solution(232443, 4));
        System.out.println(solution(123456, 7));
    }

    public static int solution(int num, int k) {
        int answer = -1;
        String[] strArr = String.valueOf(num).split("");

        for (int i = 0; i < strArr.length; i++) {
            if (strArr[i].equals(String.valueOf(k))) {
                answer = i + 1;
                break;
            }
        }

        return answer;
    }
}

 

 

n의 배수 고르기

프로그래머스 n의 배수 고르기 자바

 

 

import java.util.stream.IntStream;

/**
 * 코딩테스트 입문 Day 17 문자열, 수학, 조건문, 배열, 사칙연산
 * n의 배수 고르기
 */
public class Main2 {
    public static void main(String[] args) {
        int[] result = solution(3, new int[]{4, 5, 6, 7, 8, 9, 10, 11, 12});
        for (int num : result) {
            System.out.print(num + " ");
        }
        System.out.println();

        result = solution(5, new int[]{1, 9, 3, 10, 13, 5});
        for (int num : result) {
            System.out.print(num + " ");
        }
        System.out.println();

        result = solution(12, new int[]{2, 100, 120, 600, 12, 12});
        for (int num : result) {
            System.out.print(num + " ");
        }
        System.out.println();
    }

    public static int[] solution(int n, int[] numlist) {
        return IntStream.of(numlist).filter(e -> e % n == 0).toArray();
    }
}

 

 

자릿수 더하기

프로그래머스 자릿수 더하기 자바

 

 

import java.util.Arrays;

/**
 * 코딩테스트 입문 Day 17 문자열, 수학, 조건문, 배열, 사칙연산
 * 자릿수 더하기
 */
public class Main3 {
    public static void main(String[] args) {
        System.out.println(solution(1234));
        System.out.println(solution(930211));
    }

    public static int solution(int n) {
        String[] strArr = String.valueOf(n).split("");
        return Arrays.stream(strArr).mapToInt(Integer::parseInt).sum();
    }
}

 

 

OX퀴즈

프로그래머스 OX퀴즈 자바

 

 

/**
 * 코딩테스트 입문 Day 17 문자열, 수학, 조건문, 배열, 사칙연산
 * OX퀴즈
 */
public class Main4 {
    public static void main(String[] args) {
        String[] result = solution(new String[]{"3 - 4 = -3", "5 + 6 = 11"});
        for (String s : result) {
            System.out.print(s + " ");
        }
        System.out.println();

        result = solution(new String[]{"19 - 6 = 13", "5 + 66 = 71", "5 - 15 = 63", "3 - 1 = 2"});
        for (String s : result) {
            System.out.print(s + " ");
        }
        System.out.println();
    }

    public static String[] solution(String[] quiz) {
        String[] answer = new String[quiz.length];

        for (int i = 0; i < quiz.length; i++) {
            String[] strArr = quiz[i].split(" ");

            if (strArr[1].equals("+")) {
                if (Integer.parseInt(strArr[0]) + Integer.parseInt(strArr[2]) == Integer.parseInt(strArr[4])) {
                    answer[i] = "O";
                } else {
                    answer[i] = "X";
                }
            } else if (strArr[1].equals("-")) {
                if (Integer.parseInt(strArr[0]) - Integer.parseInt(strArr[2]) == Integer.parseInt(strArr[4])) {
                    answer[i] = "O";
                } else {
                    answer[i] = "X";
                }
            }
        }

        return answer;
    }
}

 

 

 

728x90
반응형