Menu
Coddy logo textTech

도전 과제 - 공동 준비물

Coddy Kotlin 여정의 논리와 흐름 섹션에 포함된 레슨. 63개 중 63번째.

challenge icon

챌린지

전문가

매개변수 requests: List<String>, available: List<String>를 사용하여 sharedSupplies를 완성하세요. 각 요청은 필요한 항목을 쉼표로 구분한 목록입니다. 필드를 trim하고 ASCII 이름을 소문자로 변환한 후 빈 필드를 삭제하세요. 모든 서로 다른 필수 항목이 동일한 trim 및 소문자 변환을 거친 뒤 available에 포함되어 있으면 요청을 충족할 수 있습니다. 빈 요청은 충족할 수 있습니다. 요청마다 index=ready 또는 index=missing:item1,item2를 반환하되, 누락된 이름은 중복 없이 정렬하세요. 인덱스는 0부터 시작합니다. 사용 가능 여부는 수량이 아니라 포함 여부로 판단합니다.

위에서 더 엄격한 범위를 지정하지 않았다면, 각 수준의 컬렉션에는 최대 100개의 요소가 포함되며 정수 인수와 정수 컬렉션 값은 -1000에서 1000 사이입니다. 파싱을 위해 제공되는 텍스트에는 설명된 대로 유효하지 않거나 범위를 벗어난 표현이 포함될 수 있습니다.

List<String> 유형의 값을 반환하세요. 제공된 입력/출력 코드를 그대로 유지하세요. 스칼라 인수는 한 줄에 하나씩 읽습니다. 목록은 개수와 그 뒤에 오는 요소로 시작하며, 맵은 항목 개수와 그 뒤에 이어지는 각 키와 값으로 시작합니다. 중첩 목록에서는 각 행마다 개수와 요소 형식을 반복합니다. 제공된 main은 반환값을 출력한 다음 줄바꿈 문자 하나를 출력합니다. 목록은 Kotlin의 표준 대괄호 형식을 사용하며, 추가 레이블은 출력하지 마세요.

REQUIRED OUTPUT FORMAT: [Your translated content here]

직접 해보기

fun sharedSupplies(requests: List<String>, available: List<String>): List<String> {
    // 여기에 솔루션을 작성하세요.
    return emptyList()
}
fun main() {
    val requestsCount = readln().toInt()
    val requests = mutableListOf<String>()
    for (i0 in 0 until requestsCount) {
        val requestsItem = readLine().orEmpty()
        requests.add(requestsItem)
    }
    val availableCount = readln().toInt()
    val available = mutableListOf<String>()
    for (i0 in 0 until availableCount) {
        val availableItem = readLine().orEmpty()
        available.add(availableItem)
    }
    println(sharedSupplies(requests, available))
}

논리와 흐름의 모든 레슨

직접 연습해 보세요: Kotlin 플레이그라운드