본문 바로가기

개발자24

[프로그래머스] 코딩테스트 입문 : 구슬을 나누는 경우의 수 | 문제머쓱이는 구슬을 친구들에게 나누어주려고 합니다. 구슬은 모두 다르게 생겼습니다.머쓱이가 갖고 있는 구슬의 개수 balls와 친구들에게 나누어 줄 구슬 개수 share이 매개변수로 주어질 때, balls개의 구슬 중 share개의 구슬을 고르는 가능한 모든 경우의 수를 return 하는 solution 함수를 완성해 주세요.| 제한 사항1 ≤ balls ≤ 301 ≤ share ≤ 30구슬을 고르는 순서는 고려하지 않습니다.share ≤ balls| 입출력 예ballsshareresult3235310| 힌트balls가 3이고 share가 2라면 result는 (3 * (3-1)) / (2 * (2-1))이고balls가 5이고 share이 3이라면 result는 (5 * (5-1) * (5-2)) /.. 2024. 10. 8.
[프로그래머스] 코딩테스트 입문 : 가위 바위 보 | 문제가위는 2 바위는 0 보는 5로 표현합니다.가위 바위 보를 내는 순서대로 나타낸 문자열 rsp가 매개변수로 주어질 때,rsp에 저장된 가위 바위 보를 모두 이기는 경우를 순서대로 나타낸 문자열을 return 하도록 solution 함수를 완성해 보세요.| 제한 사항0 ≤ 100rsp와 길이가 같은 문자열을 return 합니다.rsp는 숫자 0,2,5로 이루어져 있습니다.| 입출력 예rspresult"2""0""205""052"| 힌트가위 바위 보에서 핵심은 항상 승자와 패자가 고정되어 있다는 사실입니다. 그 어떤 상황에서도 가위와 바위가 싸우면 바위가 이기죠.다시 말해서 이 문제는 복잡한 가위, 바위, 보 연산을 하는 문제가 아니라,2(가위)는 0(바위)으로, 0(바위)는 5(보)로, 5(보)는 .. 2024. 10. 3.
[프로그래머스] 코딩테스트 입문 : 모스부호(1) | 문제머쓱이는 친구에게 모스부호를 이용한 편지를 받았습니다.그냥은 읽을 수 없어 이를 해독하는 프로그램을 만들려고 합니다.문자열 letter가 매개변수로 주어질 때, letter를 영어 소문자로 바꾼 문자열을 return 하도록 solution 함수를 완성해 보세요. 모스부호는 다음과 같습니다.morse = { '.-':'a','-...':'b','-.-.':'c','-..':'d','.':'e','..-.':'f', '--.':'g','....':'h','..':'i','.---':'j','-.-':'k','.-..':'l', '--':'m','-.':'n','---':'o','.--.':'p','--.-':'q','.-.':'r', '...':'s','-':'t','..-':.. 2024. 10. 2.
[프로그래머스] 코딩테스트 입문 : 개미군단 | 문제개미군단이 사냥을 나가려고 합니다.개미군단은 사냥감의 체력에 딱 맞는 병력을 데리고 나가려고 합니다.장군개미는 5의 공격력을, 병정개미는 3의 공격력을, 일개미는 1의 공격력을 가지고 있습니다.예를 들어 체력 23의 여치를 사냥하려고 할 때, 일개미 23마리를 데리고 가도 되지만,장군개미 4마리와 병정개미 1마리를 데려간다면 더 적은 병력으로 사냥할 수 있습니다. 사냥감의 체력 hp가 매개변수로 주어질 때,사냥감의 체력에 딱 맞게 최소한의 병력을 구성하려면 몇 마리의 개미가 필요한지를 return 하도록 solution함수를 완성해 주세요.| 제한 사항hp는 자연수입니다.0 ≤ hp ≤ 1000 | 입출력 예hpresult235246999201| 힌트코딩테스트에 익숙하지 않은 분들이 헷갈릴만한 요.. 2024. 10. 1.
[프로그래머스] 코딩테스트 입문 : 순서쌍의 개수 | 문제순서쌍이란 두 개의 숫자를 순서를 정하여 짝지어 나타낸 쌍으로(a,b)로 표기합니다.자연수 n이 매개변수로 주어질 때 두 숫자의 곱이 n인 자연수 순서쌍의 개수를 return하도록 solution 함수를 완성해주세요.| 제한 사항1 ≤ n ≤ 1,000,000 | 입출력 예nresult2061009| 힌트두 숫자의 곱이 n이면 둘 중에 하나의 숫자로 n을 나눴을 때 나머지가 0입니다.| 풀이 1힌트에서 제시한대로 특정 숫자 i를 n으로 나눴을때 나머지가 0인 숫자의 개수를 구했습니다.주어진 숫자가 20일 경우 순서쌍이 (1,20),(2,10),(4,5),(5,4),(10,2),(20,1)로 총 6라면 우리는 두개의 순서쌍 중에서 앞에 오는 숫자만 구해준 것이죠.public class Solutio.. 2024. 9. 30.
[프로그래머스] 코딩테스트 입문 : 진료순서 정하기 | 문제외과의사 머쓱이는 응급실에 온 환자의 응급도를 기준으로 진료 순서를 정하려고 합니다. 정수 배열 emergency가 매개변수로 주어질 때 응급도가 높은 순서대로 진료 순서를 정한 배열을 return 하도록 solution 함수를 완성해 주세요.| 제한 사항중복된 원소는 없습니다.1 ≤ emergency의 길이 ≤ 101 ≤ emergency의 원소 ≤ 100| 입출력 예emergencyresult{3,76,24}{3,1,2}{1,2,3,4,5,6,7}{7,6,5,4,3,2,1}{30,10,23,6,100}{2,4,3,5,1}| 힌트정수 배열은 주어진 값을 크기 순서대로 정렬할 수 있습니다. 정렬된 배열과 정렬하지 않은 배열을 비교하면 순서를 알 수 있지 않을까요?| 풀이 1기존 배열 emergen.. 2024. 9. 20.
[프로그래머스] 코딩테스트 입문 : 외계행성의 나이 | 문제우주여행을 하던 머쓱이는 엔진 고장으로 PROGRAMMERS-962 행성에 불시착하게 됐습니다.입국심사에서 나이를 말해야 하는데, PROGRAMMERS-962 행성에서는 나이를 알파벳으로 말하고 있습니다.a는 0, b는 1, c는 2, ..., j는 9입니다.예를 들어 23살은 cd, 51살은 fb로 표현합니다.나이 age가 매개변수로 주어질 때 PROGRAMMERS-962식 나이를 return하도록 solution 함수를 완성해주세요.| 제한 사항age는 자연수입니다.age ≤ 1,000PROGRAMMERS-962 행성은 알파벳 소문자만 사용합니다.| 입출력 예ageresult23"cd"51"fb"100"baa"| 힌트아시다시피 자바에서 순서를 나타내는 인덱스는 0부터 출발합니다.a는 0, b는.. 2024. 9. 19.
[프로그래머스] 코딩테스트 입문 : 짝수의 합 | 문제정수 n이 주어질 때, n이하의 짝수를 모두 더한 값을 return 하도록 solution 함수를 작성해 주세요.| 제한 사항0 | 입출력 예nresult103046| 힌트홀수와 짝수를 판단하는 기준이 2로 나눴을 때 나머지라는 사실을 기억하세요.지금 머릿속에 그려지는 그대로 풀어가시면 됩니다.연속한 두 항의 차가 일정한 수열을 뜻하는 등차수열을 활용할 수도 있습니다.| 풀이 1우리가 아는 자연수중에서 가장 작은 짝수 2에서부터주어진 숫자 n까지 2의 배수 즉, 짝수들을 하나씩 더해줍니다.public int solution01(int n) { int answer = 0; for(int i = 2 ; i | 풀이 2좀 더 그럴싸한 방법을 찾는 분들께 제안드리는 방식입니다. 수학시간에 배운.. 2024. 9. 10.
[프로그래머스] 코딩테스트 입문 : 양꼬치 | 문제머쓱이네 양꼬치 가게는 10인분을 먹으면 음료수 하나를 서비스로 줍니다.양꼬치는 1인분에 12,000원, 음료수는 2,000원입니다. 정수 n과 k가 매개변수로 주어졌을 때, 양꼬치 n인분과 음료수 k개를 먹었다면총얼마를 지불해야 하는지 return 하도록 solution 함수를 완성해 보세요.| 제한 사항0 n/10 ≤ k 서비스로 받은 음료수는 모두 마십니다.| 입출력 예nkresult103124,000646768,000| 힌트알고리즘 문제를 풀다 보면 정말 다양한 상황에 놓이게 됩니다. 양꼬치 문제는 양꼬치 10개에 음료수 1개를 서비스로 준다는 것뿐만 아니라주어진 음료수를 모두 마신다는 조건이 주어져있는데요. 댓글을 보니 "서비스로 준걸 마셨는지 돈 내고 마셨는지 어떻게 아나요?"같은 질문.. 2024. 9. 9.