문제 풀기/C#
51. 푸드 파이트 대회
kagan-draca
2025. 2. 5. 14:12
기본 틀 :
using System;
public class Solution {
public string solution(int[] food) {
string answer = "";
return answer;
}
}
문제의 글이 길고 문제가 어려워 보일 수 있지만 막상 코드를 작성해보면 쉬운 문제였다.
먼저, 결과를 담을 string 변수 result를 만들면서 "0"으로 초기화 해준다.
그리고 반복문을 이용해 매개변수로 주어진 int 형 배열을 순회할 것인데
food.Length - 1 ~ 1까지 배열을 뒤에서부터 순회를 시켜줄 생각이다.
반복문 안에서는
food[i] = food[i] / 2;
를 해주어 food[i]가 홀수 개이면 짝수로 만듬과 동시에 짝수의 개수가 몇 개인지 구한다.
이렇게 구해진 짝수의 개수를 이용해 0 ~ 짝수의 개수 만큼 반복문을 수행해준다.
그리고, 그 반복문 안에는
result = 짝수 개수 + result + 짝수 개수
로 양쪽 플레이어가 먹을 수 있는 음식을 배치해준다.
using System;
public class Solution
{
public string solution(int[] food)
{
string result = "0";
for(int i = food.Length - 1; i >= 1; i--)
{
food[i] = food[i] / 2;
for(int j = 0; j < food[i]; j++)
result = i + result + i;
}
return result;
}
}