티스토리 뷰

#  개미 군단

 

문제 설명
개미 군단이 사냥을 나가려고 합니다. 개미군단은 사냥감의 체력에 딱 맞는 병력을 데리고 나가려고 합니다. 장군개미는 5의 공격력을, 병정개미는 3의 공격력을 일개미는 1의 공격력을 가지고 있습니다. 예를 들어 체력 23의 여치를 사냥하려고 할 때, 일개미 23마리를 데리고 가도 되지만, 장군개미 네 마리와 병정개미 한 마리를 데리고 간다면 더 적은 병력으로 사냥할 수 있습니다. 사냥감의 체력 hp가 매개변수로 주어질 때, 사냥감의 체력에 딱 맞게 최소한의 병력을 구성하려면 몇 마리의 개미가 필요한지를 return하도록 solution 함수를 완성해주세요.


제한사항
hp는 자연수입니다.
0 ≤ hp ≤ 1000



입출력 예 설명

입출력 예 #1
hp가 23이므로, 장군개미 네마리와 병정개미 한마리로 사냥할 수 있습니다. 따라서 5를 return합니다.
입출력 예 #2
hp가 24이므로, 장군개미 네마리 병정개미 한마리 일개미 한마리로 사냥할 수 있습니다. 따라서 6을 return합니다.
입출력 예 #3
hp가 999이므로, 장군개미 199 마리 병정개미 한마리 일개미 한마리로 사냥할 수 있습니다. 따라서 201을 return합니다.

 
 
 
 
나의 답변

class Solution {
    public int solution(int hp) {
        int answer = 0;
        
        answer = hp/5;
        hp = hp%5;
        answer += hp/3;
        hp = hp%3;
        answer += hp/1;
            

        return answer;
    }
}

 
 
 
 
 
 
 
 
 
 
 

#  가위 바위 보

 

문제 설명
가위는 2 바위는 0 보는 5로 표현합니다. 가위 바위 보를 내는 순서대로 나타낸 문자열 rsp가 매개변수로 주어질 때, rsp에 저장된 가위 바위 보를 모두 이기는 경우를 순서대로 나타낸 문자열을 return하도록 solution 함수를 완성해보세요.

제한사항
0 < rsp의 길이 ≤ 100
rsp와 길이가 같은 문자열을 return 합니다.
rsp는 숫자 0, 2, 5로 이루어져 있습니다.



입출력 예 설명

입출력 예 #1
"2"는 가위이므로 바위를 나타내는 "0"을 return 합니다.
입출력 예 #2
"205"는 순서대로 가위, 바위, 보이고 이를 모두 이기려면 바위, 보, 가위를 순서대로 내야하므로 “052”를 return합니다.

 
 
 
 
나의 답변

class Solution {
    public String solution(String rsp) {
        String answer = "";
        
        for(int i=0; i<rsp.length(); i++){
            if(rsp.charAt(i)=='0'){
                answer += 5;
            }
            else if(rsp.charAt(i)=='2'){
                answer += 0;
            }
            else if(rsp.charAt(i)=='5'){
                answer += 2;
            }
        }
        return answer;
    }
}

 
 
 
 
 
 
 
 
 
 
 
 

#  공 던지기

 

문제 설명
머쓱이는 친구들과 동그랗게 서서 공 던지기 게임을 하고 있습니다. 공은 1번부터 던지며 오른쪽으로 한 명을 건너뛰고 그다음 사람에게만 던질 수 있습니다. 친구들의 번호가 들어있는 정수 배열 numbers와 정수 K가 주어질 때, k번째로 공을 던지는 사람의 번호는 무엇인지 return 하도록 solution 함수를 완성해보세요.


제한사항
2 < numbers의 길이 < 100
0 < k < 1,000
numbers의 첫 번째와 마지막 번호는 실제로 바로 옆에 있습니다.
numbers는 1부터 시작하며 번호는 순서대로 올라갑니다.




입출력 예 설명

입출력 예 #1
1번은 첫 번째로 3번에게 공을 던집니다.3번은 두 번째로 1번에게 공을 던집니다.
입출력 예 #2
1번은 첫 번째로 3번에게 공을 던집니다.3번은 두 번째로 5번에게 공을 던집니다.5번은 세 번째로 1번에게 공을 던집니다.1번은 네 번째로 3번에게 공을 던집니다.3번은 다섯 번째로 5번에게 공을 던집니다.
입출력 예 #3
1번은 첫 번째로 3번에게 공을 던집니다.3번은 두 번째로 2번에게 공을 던집니다.2번은 세 번째로 1번에게 공을 던집니다.

 
 
 
 
나의 답변

class Solution {
    public int solution(int[] numbers, int k) {
        int answer = 0;
        int idx = 0;
    
        for(int i=0; i<k-1; i++){
            idx = (idx+2)%numbers.length;
        }
        answer = numbers[idx];
        return answer;
    }
}

 
 
 
 
 
 
 
 



 
 
 
 

#  세균 증식

 

문제 설명
어떤 세균은 1시간에 두배만큼 증식한다고 합니다. 처음 세균의 마리수 n과 경과한 시간 t가 매개변수로 주어질 때 t시간 후 세균의 수를 return하도록 solution 함수를 완성해주세요.


제한사항
1 ≤ n ≤ 10
1 ≤ t ≤ 15


입출력 예 설명
입출력 예 #1
처음엔 2마리, 1시간 후엔 4마리, 2시간 후엔 8마리, ..., 10시간 후엔 2048마리가 됩니다. 따라서 2048을 return합니다.
입출력 예 #2
처음엔 7마리, 1시간 후엔 14마리, 2시간 후엔 28마리, ..., 15시간 후엔 229376마리가 됩니다. 따라서 229,376을 return합니다.

 
 
 
 
나의 답변

class Solution {
    public int solution(int n, int t) {
        int answer = n;
        for(int i=1; i<=t; i++){
            answer *= 2;
        }
        return answer;
    }
}

 
 
 
 
 
 
 
 


#  편지

 

문제 설명

머쓱이는 할머니께 생신 축하 편지를 쓰려고 합니다. 할머니가 보시기 편하도록 글자 한 자 한 자를 가로 2cm 크기로 적으려고 하며, 편지를 가로로만 적을 때, 축하 문구 message를 적기 위해 필요한 편지지의 최소 가로길이를 return 하도록 solution 함수를 완성해주세요.


제한사항
공백도 하나의 문자로 취급합니다.
1 ≤ message의 길이 ≤ 50편지지의 여백은 생각하지 않습니다.
message는 영문 알파벳 대소문자, ‘!’, ‘~’ 또는 공백으로만 이루어져 있습니다.




입출력 예 설명
입출력 예 #1
message의 글자 수가 15개로 최소 가로 30cm의 편지지가 필요합니다.
입출력 예 #2
message의 글자 수가 11개로 최소 가로 22cm의 편지지가 필요합니다.

 
 
 
 
나의 답변

class Solution {
    public int solution(String message) {
        
        int len = message.length();
        int answer = len*2;
        
        return answer;
    }
}

'코딩 > 프로그래머스' 카테고리의 다른 글

[SQL - SELECT] 3  (0) 2024.06.20
코딩테스트 입문 #81 ~ #85  (0) 2024.06.18
코딩 기초 트레이닝 #76 ~ #80  (1) 2024.06.17
[SQL - SELECT] 2  (1) 2024.06.14
코딩테스트 입문 #71 ~ #76  (0) 2024.06.13
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday