알고리즘/프로그래머스 Level1

[프로그래머스, java] Level1: 카드뭉치

류창 2023. 2. 17. 21:54
반응형

 

문제분석:

전형적인 레벨 1 문제다.

 

문제는 원하는 문자열을 만들기위해  주어지는 2개의 단어 컨테이너 벨트가 존재하는데,

 

이 컨테이너벨트에서 뽑아서 문자열을 만들수있으면 ,Yes  아니면 No를 반환하자.

 

 

이 로직은 idx순회만 잘 조절하면 쉽다.

 

1번째 카드를 사용하면 1번째카드 ids를, 2번째카드를 사용하면 2번카드 idx를

 

둘다 못움직이면 NO를반환하자.

 

문제풀이

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
class Solution {
    public String solution(String[] cards1, String[] cards2, String[] goal) {
        String answer = "";
        
        int idx1=0;
        int idx2=0;
        
        for(String s: goal){    
            if(idx1!=cards1.length&&cards1[idx1].equals(s)){
                idx1++;
            }else if(idx2!=cards2.length&&cards2[idx2].equals(s)){
                idx2++;
            }else{
                return "No";
            }
        }
        
        return "Yes";
    }
}
cs
반응형