trang chủ / đề bài / centertri

Tam giác chứa tâm đa giác

Đề bài

Mô tả

Cho một đa giác đều n đỉnh, các đỉnh được đánh số từ 1 đến n theo chiều kim đồng hồ. Trong đó có k đỉnh được tô màu.

Hãy cho biết có bao nhiêu cách chọn ba đỉnh khác nhau đều được tô màu sao cho tam giác xác định bởi ba đỉnh này chứa tâm của đa giác (tâm có thể nằm trên cạnh của tam giác).

Dữ liệu vào

  • Dòng đầu chứa hai số nguyên dương n,k (3≤k≤n≤106).
  • Dòng thứ hai chứa k số nguyên p1,p2,…,pk (1≤p1<p2<⋯<pk≤n) mô tả các đỉnh được tô màu.

Dữ liệu ra

  • Một số nguyên là số cách chọn ba đỉnh thoả mãn.

Ràng buộc

  • 3≤k≤n≤106.
  • 1≤p1<p2<⋯<pk≤n.

Các subtask:

  • Subtask 1 (25%): n,k≤500.
  • Subtask 2 (25%): n,k≤5000.
  • Subtask 3 (25%): k=n.
  • Subtask 4 (25%): không có ràng buộc gì thêm.

Ví dụ

Input Output Giải thích
6 4
1 3 4 5
3 Ba bộ thoả mãn: (1,3,4), (1,3,5), (1,4,5). Bộ (3,4,5) không chứa tâm vì cả ba đỉnh nằm gọn trong nửa đa giác.

Ghi chú

Số cách chọn có thể rất lớn, cần dùng kiểu số nguyên 64-bit.

Bình luận

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

gnatmake 12.2.0 a68g 3.1.2 nasm 2.16.1 as_x64 2.47 awk 1.3.4 gcc 16.2.0 dotnet 10.0.402 g++ 16.2.0 g++-themis 16.2.0 g++17 16.2.0 g++20 16.2.0 g++23 16.2.0 clang++ 22.1.8 dmd 2.113.0 dart 3.13.6 gforth 0.7.3 gfortran 15.3.0 go 1.27.3 groovyc 5.1.3 javac 26.0.2.1 node 26.12.1 julia 1.13.2 kotlinc 2.4.21 lean 4.35.0 sbcl 2.2.9 lua 5.5.1 nim 2.2.12 fpc 3.2.2 fpc-themis 3.2.2 perl 5.42.3 php 8.5.12 pike 8.0 swipl 9.0.4 pypy3 7.3.23 python3 3.15.1 racket 8.7 ruby 4.0.8 rustc 1.99.1 csc 5.3.0 ctoj-scratch 0.0.1 sed 4.9 swiftc 6.4.1 tclsh 8.6 bun 1.4.4 deno 2.9.8 v 0.5.2 zig 0.17.0