Tích bằng 1 modulo N
Đề bài
Mô tả
Cho số nguyên . Xét dãy số .
Hãy tìm dãy con dài nhất của dãy này sao cho tích các phần tử của nó chia dư .
Dãy được gọi là dãy con của dãy nếu nhận được từ bằng cách xóa đi một số (có thể là không có, có thể là tất cả) phần tử. Tích của dãy con rỗng được quy ước bằng .
Dữ liệu vào
Một dòng duy nhất chứa số nguyên .
Dữ liệu ra
Dòng đầu tiên in ra một số nguyên là độ dài của dãy con dài nhất tìm được.
Dòng thứ hai in ra phần tử của dãy con đó theo thứ tự tăng dần.
Nếu có nhiều đáp án, in ra một đáp án bất kỳ.
Ràng buộc
Ví dụ
| Input | Output | Giải thích |
|---|---|---|
| 5 | 3 1 2 3 |
Tích các phần tử là . Dãy con dài hơn duy nhất là với tích , không thỏa mãn. Vậy đáp án là . |
| 8 | 4 1 3 5 7 |
Tích các phần tử là . Không tồn tại dãy con nào có từ phần tử trở lên thỏa mãn. |
Bình luận