USACO 2020 - Exercise

Xem PDF



Dạng bài
Ngôn ngữ cho phép
Assembly, Awk, C, C#, C++, Clang, Cobol, D, Groovy, Haskell, JS, Java, Kotlin, Lua, Node JS, OCaml, ObjectiveC, PHP, Pascal, Perl, Prolog, Pypy, Pypy 3, Python, Ruby, Rust, Scala, Scratch, Swift
Điểm: 2200 (p) Thời gian: 4.0s Bộ nhớ: 512M Input: bàn phím Output: màn hình

Nông dân John lại nghĩ ra một bài tập thể dục buổi sáng mới cho những con bò!

Như trước đây, \(N\) con bò của Nông dân John (\(1 \leq N \leq 10^4\)) đang đứng thành một hàng. Con bò thứ \(i\) từ bên trái mang nhãn \(i\) với mỗi \(1 \leq i \leq N\). Ông yêu cầu chúng lặp lại bước sau cho đến khi những con bò trở về đúng thứ tự ban đầu:

  • Cho một hoán vị \(A\) độ dài \(N\), những con bò thay đổi thứ tự sao cho con bò đứng thứ \(i\) từ bên trái trước khi thay đổi sẽ đứng thứ \(A_i\) từ bên trái sau khi thay đổi.

Ví dụ, nếu \(A=(1,2,3,4,5)\) thì những con bò thực hiện một bước. Nếu \(A=(2,3,1,5,4)\) thì những con bò thực hiện sáu bước. Thứ tự của những con bò từ trái sang phải sau mỗi bước như sau:

  • 0 bước: \((1,2,3,4,5)\)
  • 1 bước: \((3,1,2,5,4)\)
  • 2 bước: \((2,3,1,4,5)\)
  • 3 bước: \((1,2,3,5,4)\)
  • 4 bước: \((3,1,2,4,5)\)
  • 5 bước: \((2,3,1,5,4)\)
  • 6 bước: \((1,2,3,4,5)\)

Tìm tổng của tất cả các số nguyên dương \(K\) sao cho tồn tại một hoán vị độ dài \(N\) khiến những con bò phải thực hiện đúng \(K\) bước.

Vì số này có thể rất lớn, hãy in đáp án theo modulo \(M\) (\(10^8 \leq M \leq 10^9+7\), \(M\) là số nguyên tố).

Dữ liệu vào

Tệp exercise.in:

Dòng đầu tiên chứa \(N\)\(M\).

Dữ liệu ra

Tệp exercise.out:

In một số nguyên duy nhất.

Phân nhóm

  • Các test 2–5 thỏa mãn \(N \leq 10^2\).
  • Các test 6–10 không có ràng buộc bổ sung.

Ví dụ

Ví dụ 1

Input
5 1000000007
Output
21
Giải thích

Tồn tại các hoán vị khiến những con bò phải thực hiện lần lượt \(1\), \(2\), \(3\), \(4\), \(5\)\(6\) bước. Vì vậy, đáp án là \(1+2+3+4+5+6=21\).

Nguồn

USACO 2020 US Open Contest, Gold — Exercise

Tác giả bài: Benjamin Qi.

Bình luận

Mới nhất
Tải bình luận...

Không có bình luận nào.

Kỳ thi: