Menu
CoddyTech

Tạo tập hợp

Thuộc phần Logic và luồng chương trình trong hành trình Kotlin của Coddy. Bài học 11 trên 63.

Tập hợp (set) chứa các phần tử khác biệt. setOf tạo một tập hợp chỉ đọc; chuyển đổi danh sách (list) bằng toSet sẽ loại bỏ các giá trị trùng lặp. Tập hợp hỗ trợ kiểm tra phần tử có thuộc tập hợp hay không, chứ không truy cập theo chỉ số vị trí. Hãy sắp xếp tập hợp trước khi tạo đầu ra có thứ tự.

Bên trong main:

val ids = setOf(4, 2, 4, 7)
println(ids.size)

Số 4 xuất hiện nhiều lần nhưng chỉ được tính một lần, nên còn lại ba giá trị riêng biệt.

Tập hợp lưu trữ các giá trị riêng biệt; nó không cung cấp cách truy cập theo chỉ số như danh sách.

challenge icon

Thử thách

Trung bình

Hoàn thiện distinctCount với tham số items: List<Int>. Trả về số lượng số nguyên phân biệt.

Trừ khi có giới hạn chặt hơn được nêu ở trên, các tập hợp có tối đa 100 phần tử ở mỗi cấp và các đối số số nguyên cùng giá trị số nguyên trong tập hợp nằm trong khoảng từ -1000 đến 1000. Văn bản dùng để phân tích có thể chứa các biểu diễn không hợp lệ hoặc nằm ngoài phạm vi như mô tả.

Trả về giá trị kiểu Int. Giữ nguyên code đầu vào/đầu ra đã cung cấp. Code này đọc mỗi đối số đơn trên một dòng; danh sách bắt đầu bằng số lượng phần tử, tiếp theo là các phần tử, còn bản đồ bắt đầu bằng số lượng mục, tiếp theo là từng khóa và giá trị. Danh sách lồng nhau lặp lại định dạng số lượng phần tử và các phần tử cho mỗi hàng. main đã cung cấp in giá trị trả về, theo sau là một ký tự xuống dòng. Danh sách dùng định dạng có dấu ngoặc vuông tiêu chuẩn của Kotlin; không in thêm nhãn.

Tự làm thử

fun distinctCount(items: List<Int>): Int {
    // Viết lời giải của bạn ở đây.
    return 0
}
fun main() {
    val itemsCount = readln().toInt()
    val items = mutableListOf<Int>()
    for (i0 in 0 until itemsCount) {
        val itemsItem = readln().toInt()
        items.add(itemsItem)
    }
    println(distinctCount(items))
}
quiz iconTự kiểm tra

Bài học này có một bài trắc nghiệm ngắn. Bắt đầu bài học để trả lời và theo dõi tiến độ.

Tất cả bài học trong Logic và luồng chương trình

Tự luyện tập: Playground Kotlin