문제

풀이
class Solution {
public String solution(String[] cards1, String[] cards2, String[] goal) {
String answer = "Yes";
//순서가 안맞으면 "NO";
//투포인터로 해볼까?
int lt=0,rt=0;
for(int i=0; i<goal.length; i++){
if(goal[i].equals(cards1[lt])){
if(lt<cards1.length-1) lt++;
}
else if(goal[i].equals(cards2[rt])){
if(rt<cards2.length-1) rt++;
}
else if(goal[i].equals(cards1[lt]) && goal[i].equals(cards2[rt])){
if(lt<cards1.length-1 && rt<cards2.length-1){
lt++;
rt++;
}
}
else answer="No";
}
return answer;
}
}
- 투포인터 변수를 선언해서 문제해결.
- 문자열비교는 '==' 가 아닌 'str1.equals(str2)' 로 해결해야한다. 이유는 '=='는 값자체의 참거짓을 따진다. 그래서 문자열 class의 값을 비교하려면 .equals()를 사용해야한다.