Dãy con Tribo chia hết cho k

Xem dạng PDF

Gửi bài giải

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

Dạng bài

Do đã quá quen với dãy fibonacci, hôm nay, chúng ta hãy cùng tìm hiểu về dãy tribonacci.

Số tribonacci thứ i sẽ có công thức truy hồi như sau: f[i] = f[i - 1] + f[i - 2] + f[i - 3] nếu i > 3, ngược lại f[i] = i nếu i ≤ 3.

Cho n số tribonacci đầu tiên và một số k (k ≤ n), hay tìm một dãy con bất kì (không nhất thiết phải liên tiếp) của dãy n số tribonacci này sao cho tổng của các phần tử trong dãy con đó chia hết cho k.


Input:

• Gồm một dòng chứa số nguyên dương n và số nguyên dương k (1 ≤ k ≤ n ≤ 10^5)

Output:

• Dòng đầu in ra số q là độ dài của dãy con thỏa mãn tìm được, nếu không tồn tại in ra -1.

• Dòng thứ hai in ra q chỉ số của dãy con tìm được.

• Nếu có nhiều hơn một dãy con thỏa mãn, in ra bất kì kết quả nào.


Input:
5 4
Output:
2
2 4

Giải thích:

• 5 phần tử đầu tiên của dãy tribonacci là: 1 2 3 6 11

• Chọn ra phần tử thứ 2 và 4 có tổng bằng: 2 + 6 = 8 chia hết cho 4.


Bình luận

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


Không có bình luận tại thời điểm này.