class Solution {
public String solution(String[] cards1, String[] cards2, String[] goal) {
String answer = "";
int cards1_point =0;
int cards2_point =0;
for(int i=0; i<goal.length;i++){
if (goal[i].equals(cards1[cards1_point])){
cards1_point +=1;
}else if(goal[i].equals(cards2[cards2_point]) ){
cards2_point +=1;
}else{
break;
}
}
if(cards1_point+cards2_point == goal.length){
return "Yes";
}
return "No";
}
}
범위밖이라는 오류가 나온다.
어떻게 하지 하고 생각했는데 조건문은 앞에서 충족하지 못하면 넘어간다.
그러니 조건문 앞단에 범위를 추가해주면 된다.
class Solution {
public String solution(String[] cards1, String[] cards2, String[] goal) {
String answer = "";
int cards1_point =0;
int cards2_point =0;
for(int i=0; i<goal.length;i++){
if (cards1.length>cards1_point && goal[i].equals(cards1[cards1_point])){
cards1_point +=1;
}else if(cards2.length>cards2_point &&goal[i].equals(cards2[cards2_point])){
cards2_point +=1;
}else{
break;
}
}
if(cards1_point+cards2_point == goal.length){
return "Yes";
}
return "No";
}
}