Học toán

Xem PDF



Tác giả:
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, Output, PHP, Pascal, Perl, Prolog, Pypy, Pypy 3, Python, Ruby, Rust, Scala, Scratch, Swift
Điểm: 400 (p) Thời gian: 1.0s Bộ nhớ: 256M Input: bàn phím Output: màn hình

Vào một tương lai không xa năm 2066, các em học sinh lớp 1 bây giờ đã được tiếp cận với bộ môn toán tổ hợp. Thế nhưng việc giải thích lí thuyết tổ hợp cho các em học sinh tiểu học vẫn là một nhiệm vụ cực kì khó khăn cho các giáo viên tiểu học.

Nhằm xây dựng niềm hứng thú và một chút tư duy căn bản cho các em, giáo viên quyết định giảng dạy một bài toán cơ bản trong lí thuyết tổ hợp.

Cho \(N\) viên kẹo, hỏi rằng có bao nhiêu cách chọn ra \(2\) viên kẹo khác nhau trong \(N\) viên kẹo, hai cách chọn được tính là khác nhau nếu tập hợp các viên kẹo được chọn của hai cách khác nhau.

Input

  • Dòng đầu tiên chứa một số nguyên dương \(T\) là số test.
  • \(T\) dòng tiếp theo, mỗi dòng chứa một số nguyên dương \(N_i\) (\(1 \leq N_i \leq 10^5\)).
  • Đảm bảo rằng tổng các \(N_i\) trong \(T\) test không vượt quá \(10^5\).

Output

  • Gồm \(T\) dòng, dòng thứ \(i\) chứa một số nguyên là số cách chọn ra \(2\) viên kẹo khác nhau trong \(N_i\) viên kẹo.

Scoring

  • Subtask 1 (\(10\%\) số điểm): \(T = 1, n \leq 10\).
  • Subtask 2 (\(90\%\) số điểm): Không có ràng buộc gì thêm.

Example

Test 1

Input
3
1
2
3
Output
0
1
3

Bình luận (2)

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

Kỳ thi: