흥미/코딩테스트
😊 #18 프로그래머스 - 푸드 파이트 대회(Level 1)
RadderNepa
2023. 3. 8. 01:40
[문제]
[해설]
- 나는 반복문의 노예인가? 풀긴 풀었다.
import java.util.*;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Comparator;
class Solution {
public String solution(int[] food) {
String answer = "";
List<Integer> list = new ArrayList<Integer>();
List<Integer> list2 = new ArrayList<Integer>();
for(int i = 0; i < food.length; i++) {
if(i == 0) {
// list.add(0);
} else if(food[i] > 1 && i > 0) {
int mock = food[i] / 2;
int foodNum = i;
while(true) {
list.add(foodNum);
list2.add(foodNum);
mock--;
if(mock == 0) break;
}
}
}
list.add(0);
list2.sort(Comparator.reverseOrder());
for(int k : list2) {
list.add(k);
}
for(int n : list) {
answer += n + "";
}
return answer;
}
}
- 다른 사람 풀이 참고, 진짜 깔끔하고 리소스도 훨씬 적게 들었다.
class Solution {
public String solution(int[] food) {
String answer = "0";
for(int i = (food.length - 1); i >= 0; i--) {
if(food[i] > 1) {
int mock = food[i] / 2;
for(int j = 1; j <= mock; j++) {
answer = i + answer + i;
}
}
}
return answer;
}
}