Beginner Free Contest 25 - KODDFLO

Xem dạng PDF

Gửi bài giải

Điểm: 0,10 (OI)
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 256M

Dạng bài
Ngôn ngữ cho phép
C, C++, Go, Java, Kotlin, Pascal, PyPy, Python, Rust, Scratch

Trong trường hợp đề bài hiển thị không chính xác, bạn có thể tải đề bài tại đây: Đề bài

Lưu ý: các bạn không nhập, xuất dữ liệu bằng file kể cả khi đề bài có yêu cầu. Đọc, ghi dữ liệu được thực hiện ở stdin và stdout.


Bình luận

Hãy đọc nội quy trước khi bình luận.



  • 2
    vudinhlong  đã bình luận lúc 13, Tháng 11, 2024, 14:26

    ~\to~ Comment này spoil thuật ~\leftarrow~

    • Ta sẽ dùng một mảng ~f~ để đếm với cách gọi ~f_i~: là số dãy con có ~i~ phần tử lẻ.

    • Vậy trường hợp cơ sở sẽ là ~f_0 = 1~, do ta chưa xét bất kì phần tử nào.

    • Tiếp đến, sử dụng thêm biến ~cnt~ để xác định số lượng phần tử lẻ hiện tại đang có.

    • Như vậy, với từng trạng thái ~cnt~, ta sẽ phải kiểm tra xem ~cnt \ge k~, rồi đi đếm các dãy con có ~cnt - k~ phần tử lẻ để cộng vào kết quả.

    • Vì từ sau vị trí kết thúc của các dãy con có ~cnt - k~ phần tử lẻ đến vị trí đang xét, là một dãy con có đúng ~cnt - (cnt - k) = k~ phần tử lẻ :D

    ~\to~ Accepted Solution ~\leftarrow~

    Chúc các bạn sớm AC :))