프로그래머스 문제풀이/알고리즘 (JAVA)

[JAVA] 프로그래머스 알고리즘 문제풀이 - Level 0 (20~24번 문제풀이)

남건욱 2023. 9. 20. 01:56

목차

    반응형
    20. 아이스 아메리카노

    문제

    class Solution {
        public int[] solution(int money) {
            int[] answer = new int[2];
            
            answer[0] = money / 5500;
            answer[1] = money - (answer[0] * 5500);
            
            return answer;
        }
    }

    <작성한 코드>

    첫번째 배열값에는 돈에서 5500을 나눠서 마실수있는 아메리카노 잔수를 구했다. 두번째 배열값에는 money에서 사고남은 잔돈을 받아오도록 하였다.

     

     

     

     

    21. 나이 출력

    문제

    class Solution {
        public int solution(int age) {
            int answer = 0;
            
            answer = 2022 - age + 1;
            
            return answer;
        }
    }

    <작성한 코드>

    2022기준이니 2022에서 나이를빼고 +1을 해주면 쉽게 구할 수 있다.

     

     

     

    22. 배열 뒤집기

    문제

    class Solution {
        public int[] solution(int[] num_list) {
            int[] answer = new int[num_list.length];
            
            for(int i=0; i<num_list.length; i++){
                answer[i] = num_list[num_list.length-i-1];
            }
            
            return answer;
        }
    }

    <작성한 코드>

    answer의 배열크기는 받아온 num_list의 길이 만큼 지정해주었다. 그 후 i는 0부터 num_list의 길이까지 반복해준다. answer[i] = num_list[num_list.length-i-1]; 에서 -1을 해준이유는 배열의 시작은 0부터 하기 때문에 -1을 해줘서 배열의 끝을 올바르게 설정 해주었다.

     

     

     

    23. 문자열 뒤집기

    문제

    class Solution {
        public String solution(String my_string) {
            String answer = "";
            
            for(int i=0; i<my_string.length(); i++){
                char ch = my_string.charAt(my_string.length() -i -1);
                answer += ch;
            }
            
            return answer;
        }
    }

    <작성한 코드>

    for문으로 i는 0부터 문자열의 길이까지 반복해주도록 하였다. char형 변수 ch에 문자열의 마지막 원소부터 가져와서 answer배열에 추가해주었다.

     

     

     

    24. 직각삼각형 출력하기

    문제

    import java.util.Scanner;
    
    public class Solution {
        public static void main(String[] args) {
            Scanner sc = new Scanner(System.in);
            int n = sc.nextInt();
            
            for(int i=0; i<n; i++){
                for(int j=0; j<=i; j++){
                System.out.print("*");
                }
                System.out.println();
            }
        }
    }

    <작성한 코드>

    2중 for문을 사용했다. 설명이 불필요한 기본적인 별찍기 문제이다.

    반응형
    프로필사진

    남건욱's 공부기록