[Kotlin/프로그래머스] 코딩테스트 연습 > 연습문제 > 카드 뭉치

👀 문제

https://school.programmers.co.kr/learn/courses/30/lessons/159994

👊 도전

1. 설계

  1. 문제 설명대로 구현

2. 구현

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
class Solution {
fun solution(cards1: Array<String>, cards2: Array<String>, goal: Array<String>): String {
var answer: String = ""
var i1 = 0
var i2 = 0

    for (i in goal.indices) {
        val item = goal[i]
        if (i1 < cards1.size && cards1[i1] == item) i1++
        else if (i2 < cards2.size && cards2[i2] == item) i2++
        else return "No"
    }
    return "Yes"
}
}

3. 결과

실행결과 🤟 성공 🤟

4. 설명

  1. cards1, cards2 인덱스를 두고 goal과 같은지 체크한다
    • goal을 순회하면서 cards1, cards2의 각 인덱스에 속하는 값으로 가능하다면 continue, 아니라면 No를 리턴한다.
    • goal의 for문을 모두 돌았다면 가능하다는 뜻이므로 Yes를 리턴한다.

👏 해결 완료!