C# 알고리즘 코드카타
55. 카드 뭉치
잼잼재미
2023. 12. 11. 10:32
using System;
using System.Collections.Generic;
using System.Linq;
public class Solution {
public string solution(string[] cards1, string[] cards2, string[] goal)
{
string answer = "Yes";
List<string> cards1List = cards1.ToList();
List<string> cards2List = cards2.ToList();
for (int i = 0; i < goal.Length; ++i)
{
if (cards1List.Count > 0 && goal[i] == cards1List[0] )
{
cards1List.Remove(goal[i]);
}
else if (cards2List.Count > 0 && goal[i] == cards2List[0])
{
cards2List.Remove(goal[i]);
}
else
{
answer = "No";
return answer;
}
}
return answer;
}
}
처음에는 if문 안에 cards1List.Count > 0 같은 예외처리를 해주지 않아서 계속 오류가 났다. List안의 모든 내용이 삭제 된 경우, 조건문이 성립이 되지 않아서 난 오류같다. 그리고 List가 아닌, Queqe를 사용하면 더 효율성을 높일 수 있다.