정수 l과 r이 주어졌을 때, l 이상 r이하의 정수 중에서 숫자 "0"과 "5"로만 이루어진
모든 정수를 오름차순으로 저장한 배열을 return 하는 solution 함수를 완성해 주세요.
만약 그러한 정수가 없다면, -1이 담긴 배열을 return 합니다.
public class CreatArray
{
public int[] Solution(int l, int r) {
List<int> availableAnswers = new List<int>();
for (int i = l; i <= r; i++)
{
string i_str = i.ToString();
bool isAvailable = true;
foreach (char c in i_str)
{
if (c != '0' && c != '5')
{
isAvailable = false;
break;
}
}
if(isAvailable)
availableAnswers.Add(i);
}
int[] answer = availableAnswers.ToArray();
if (answer.Length == 0)
{
answer = new int[] { -1 };
}
return answer;
}
}
l과 r 범위에서 배열에 포함될 수 있는 숫자를 담을 List<int> availableAnswers를 선언하였다.l과 r 범위에서 돌면서 해당 리스트에 포함될 수 있을지 없을지 여부를 판단하였다.string으로 변경한 뒤 해당 string값을 한 글자씩 '0'과 '5'와 같은지 여부를 판단하도록 하였다. availableAnswers에 추가하였고, 마지막에 해당 List를 ToArray()를 통해 배열로 변경해 답을 반환하도록 하였다.