알고리즘/PROGRAMMERS
푸드 파이트 대회(Lv.1)
현대타운301
2024. 3. 24. 21:55
문제 설명
입출력 예시
요약
준비된 음식의 순서대로 먹는 개수만큼 숫자 출력
풀이
접근 방식
1. 각 음식의 개수를 참가자 수인 2로 나눈다.
→ 몫의 크기만큼 해당 음식의 숫자 저장
2. 두 번째 참가자 음식 정렬
→ index = length()-1부터 0까지 감소해가며 문자열에 추가
코드리뷰
class Solution {
public String solution(int[] food) {
String setting = ""; // 1번 참가자 음식 세팅
String answer = "";
for(int i = 1; i < food.length; i++) {
int count = food[i]/2;
for(int j = 0; j < count; j++) { // 2로 나눈 몫만큼 반복해서 해당 음식 숫자 추가
setting += i;
}
}
answer = setting + "0"; // 1번 참가자 끝나면 물(0) 추가
int index = setting.length()-1;
for(int i = index; i >= 0; i--) { // 마지막 index부터 하나씩 감소시키며 2번 참가자 음식 세팅
answer += setting.charAt(i);
}
return answer;
}
}