코딩 기초 트레이닝 Day 4 with Java

2024. 3. 3. 07:57코딩테스트 리뷰(프로그래머스)/코딩 기초 트레이닝 with Java

문제.1 - n의 배수

https://school.programmers.co.kr/learn/courses/30/lessons/181937

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

문제 설명
 - 정수 num 과 n이 매개 변수로 주어질 때, num이 n의 배수이면 1을 return, n의 배수가 아니라면 0을 return 하도록 solution 함수를 완성해주세요.
제한사항
  • 2 <= num <= 100
  • 2 <= n <= 9
class Solution {
    public int solution(int num, int n) {
        return num % n == 0 ? 1 : 0;
    }
}

 

 

문제.2 - 공배수

https://school.programmers.co.kr/learn/courses/30/lessons/181936

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

문제 설명
 - 정수 nnumber와 n, m 이 주어집니다. number가 n의 배수이면서, m의 배수이면 1을 아니라면 0을 return 하도록  solution 함수를 완성해주세요.

제한사항
  • 10 <= number <= 100
  • 2 <= n, m < 10
class Solution {
    public int solution(int number, int n, int m) {
        return number % n == 0 && number % m == 0 ? 1 : 0;
    }
}

 

 

문제.3 - 홀짝에 따라 다른 값 반환하기

https://school.programmers.co.kr/learn/courses/30/lessons/181935

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

문제 설명
 - 양의 정수 n이 매개변수로 주어질 때, n이 홀수라면 n이하의 홀수인 모든 양의 정수의 합을 return 하고 n이 짝수라면, n 이하의 짝수인 모든 양의 정수의 제곱의 합을 return 하는 solution 함수를 작성해주세요.
class Solution {
    public int solution(int n) {
        int answer = 0;
        int isEven = n % 2 == 0 ? 2 : 1;
        for ( int i = isEven; i <= n; i += 2) {
            if( isEven == 2 ) answer += Math.pow(i,2);
            else answer += i;
        }
        return answer;
    }
}

 

 

문제.4 - 조건 문자열

https://school.programmers.co.kr/learn/courses/30/lessons/181934

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

문제 설명
 - 문자열에 따라 다음과 같이 두 손의 크기를 비교하려고 합니다.
  • 두 수가 n과 m이라면
    • ">", "=" : n >= m
    • "<", "=" : n <= m
    • ">", "!" : n > m
    • "<", "!" : n < m
두 문자열 ineq 와 eq 가 주어집니다. ineq는 "<" 와 ">" 중 하나고, eq는 "="와 "!"중 하나입니다. 그리고 두 정수 n과 m이 주어질 때, n과 m이 ineq와 eq의 조건에 맞으면 1을 아니면 0을 return 하도록 solution 함수를 완성해주세요.

제한 사항
 - 1 <= n, m <= 100
class Solution {
    public int solution(String ineq, String eq, int n, int m) {
        boolean answer = false;
        
        if( ineq.equals(">") && eq.equals("=")) answer = n >= m;
        else if ( ineq.equals(">") && eq.equals("!")) answer = n > m;
        else if ( ineq.equals("<") && eq.equals("=")) answer = n <= m;
        else if ( ineq.equals("<") && eq.equals("!")) answer = n < m;
        
        return answer ? 1 : 0;
    }
}

 

 * 조건을 일부로 전부 적어서 읽기 편하게 만들었습니다.

 

문제.5 - flag에 따라 다른 값 반환하기

https://school.programmers.co.kr/learn/courses/30/lessons/181933

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

문제 설명
 - 두 정수 a,b와 boolean 변수 flag가 매개변수로 주어질 때, flag가 true면 a + b를, false면 a - b를 return 하는 solution 함수를 작성해주세요.

제한사항
 * -1000 <= a,b <= 1000
class Solution {
    public int solution(int a, int b, boolean flag) {
        return flag ? a + b : a - b;
    }
}

 

 

느낀점

오늘 문제들은 전부 ? 연산자를 사용하면 편하게 풀리는 문제가 많았네요.

어제 술을 너무 마셔서 맨정신으로 있을수가 없어서 하루 건넜습니다..

반성하고 내일부터 다시 화이팅하겠습니다.

 

 

 

바뀐점

 - 오타수정 .2024-03-04

   - Day 5 > Day 4

   - Tag 추가