Tổng các số nguyên lẻ phân biệt

Đề bài

Mô tả

Cho hai số nguyên dương n và k. Hãy xác định xem n có thể được biểu diễn thành tổng của k số nguyên dương lẻ đôi một phân biệt hay không.

Bạn phải trả lời t truy vấn độc lập.

Dữ liệu vào

Dòng đầu tiên chứa một số nguyên t (1≤t≤105) — số truy vấn.

Mỗi truy vấn gồm một dòng chứa hai số nguyên n và k (1≤n,k≤107).

Dữ liệu ra

Với mỗi truy vấn, in ra "YES" (không có dấu nháy) nếu có thể biểu diễn n thành tổng của k số nguyên dương lẻ phân biệt, ngược lại in ra "NO".

Ràng buộc

  • 1≤t≤105
  • 1≤n,k≤107

Ví dụ

Input Output Giải thích
6
3 1
4 2
10 3
10 2
16 4
16 5
YES
YES
NO
YES
YES
NO
Truy vấn 1: 3=3. Truy vấn 2: 4=1+3. Truy vấn 3: không thể viết 10 thành tổng 3 số lẻ phân biệt. Truy vấn 4: 10=3+7. Truy vấn 5: 16=1+3+5+7. Truy vấn 6: không tồn tại cách biểu diễn.
1
994999 23
YES Tồn tại 23 số lẻ phân biệt có tổng bằng 994999, vì 994999≥232 và cùng tính chẵn lẻ với 23.

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