알고리즘 Level0

이상민·2024년 8월 1일
0

숫자 비교하기

정수 num1과 num2가 매개변수로 주어집니다. 두 수가 같으면 1 다르면 -1을 retrun하도록 solution 함수를 완성해주세요.

제한사항

0 ≤ num1 ≤ 10,000
0 ≤ num2 ≤ 10,000

입출력 예 설명

입출력 예 설명 #1

num1이 2이고 num2가 3이므로 다릅니다. 따라서 -1을 return합니다.
입출력 예 설명 #2

num1이 11이고 num2가 11이므로 같습니다. 따라서 1을 return합니다.
입출력 예 설명 #3

num1이 7이고 num2가 99이므로 다릅니다. 따라서 -1을 return합니다.

class Solution {
    public int solution(int num1, int num2) {
        int answer = 0;
        if (num1 == num2){
            answer = 1;
        } else {
            answer = -1;
        }
        return answer;
    }
}

풀이

두 매게변수의 정수 값이 같으면 1일 반환해주고, 아니면 -1을 반환해주면 되기 때문에 ifelse를 활용하여 풀어보았다.

git hub
https://github.com/Sangmin1999/Algorithm-Practice/blob/master/NumberComparison.java

두 수의 합

정수 num1과 num2가 주어질 때, num1과 num2의 합을 return하도록 soltuion 함수를 완성해주세요.

제한사항

-50,000 ≤ num1 ≤ 50,000
-50,000 ≤ num2 ≤ 50,000

입출력 예 설명

입출력 예 #1

num1이 2이고 num2가 3이므로 2 + 3 = 5를 return합니다.
입출력 예 #2

num1이 100이고 num2가 2이므로 100 + 2 = 102를 return합니다.

코드

class Solution {
    public int solution(int num1, int num2) {
        int answer = 0;
        if(num1 >= -50000 && num1 <= 50000 && num2 >= -50000 && num2 <= 50000) {
            answer = num1 + num2;
        }
        return answer;
    }
}

풀이

제한사항이 num1,2가 -50000 이상 -50000 이하 이므로 이 조건을 if문을 사용해서 만들어주고 두 수를 더하는 코드를 작성하였다.

git hub
https://github.com/Sangmin1999/Algorithm-Practice/blob/master/AddNumber.java

두 수의 나눗셈

정수 num1과 num2가 매개변수로 주어질 때, num1을 num2로 나눈 값에 1,000을 곱한 후 정수 부분을 return 하도록 soltuion 함수를 완성해주세요.

제한사항

0 < num1 ≤ 100
0 < num2 ≤ 100

입출력 예 설명

입출력 예 #1

num1이 3, num2가 2이므로 3 / 2 = 1.5에 1,000을 곱하면 1500이 됩니다.
입출력 예 #2

num1이 7, num2가 3이므로 7 / 3 = 2.33333...에 1,000을 곱하면 2333.3333.... 이 되며, 정수 부분은 2333입니다.
입출력 예 #3

num1이 1, num2가 16이므로 1 / 16 = 0.0625에 1,000을 곱하면 62.5가 되며, 정수 부분은 62입니다.

코드

class Solution {
    public int solution(int num1, int num2) {
        int answer = 0;
        if(num1 > 0 && num1 <= 100 && num2>0 && num2<=100) {
            double temp = (double)num1/num2 * 1000;
            answer =  (int)temp;
        }
        return answer;
    }
}

풀이

제한 사항을 if문으로 정해주고 입출력 예가 3/2일때 소숫점 부분까지 나와야 하므로 double형으로 변수에 선언해주고 그 값을 반환값인 answer에 정수형으로 다시 선언해주었다.

git hub
https://github.com/Sangmin1999/Algorithm-Practice/blob/master/DivideNumber.java

각도기

각에서 0도 초과 90도 미만은 예각, 90도는 직각, 90도 초과 180도 미만은 둔각 180도는 평각으로 분류합니다. 각 angle이 매개변수로 주어질 때 예각일 때 1, 직각일 때 2, 둔각일 때 3, 평각일 때 4를 return하도록 solution 함수를 완성해주세요.

예각 : 0 < angle < 90
직각 : angle = 90
둔각 : 90 < angle < 180
평각 : angle = 180

제한사항

0 < angle ≤ 180
angle은 정수입니다.

입출력 예 설명

입출력 예 #1

angle이 70이므로 예각입니다. 따라서 1을 return합니다.
입출력 예 #2

angle이 91이므로 둔각입니다. 따라서 3을 return합니다.
입출력 예 #2

angle이 180이므로 평각입니다. 따라서 4를 return합니다.

코드

class Solution {
    public int solution(int angle) {
        int answer = 0;
        if (angle >0 && angle < 90) {
            answer = 1;
        } else if (angle == 90) {
            answer = 2;
        } else if (angle >90 && angle < 180) {
            answer = 3;
        } else if (angle == 180) {
            answer = 4;
        }
        return answer;
    }
}

풀이

조건문을 이용해서

예각 : 0 < angle < 90
직각 : angle = 90
둔각 : 90 < angle < 180
평각 : angle = 180

각각 1,2,3,4 값이 반환되도록 코드를 만들었다.

git hub
https://github.com/Sangmin1999/Algorithm-Practice/blob/master/Protractor.java

profile
안녕하세요

0개의 댓글