Rồng Zmei Gorynich

Đề bài

Mô tả

Con quái vật ban đầu có x cái đầu. Bạn có n loại đòn đánh. Khi tung đòn loại thứ i, số đầu hiện tại giảm đi min(di,curX), trong đó curX là số đầu hiện tại. Tuy nhiên nếu sau đòn đánh này quái vật vẫn còn ít nhất một cái đầu, nó sẽ mọc thêm hi cái đầu mới. Nếu curX=0 thì quái vật bị tiêu diệt.

Ví dụ: nếu curX=10, d=7, h=10 thì số đầu chuyển thành 13 (chém rơi 7 đầu nhưng lại mọc thêm 10 đầu mới); còn nếu curX=10, d=11, h=100 thì số đầu chuyển thành 0 và quái vật bị tiêu diệt (không mọc thêm đầu vì không còn đầu nào).

Bạn có thể tung mỗi loại đòn bao nhiêu lần tùy ý, theo thứ tự tùy ý. Hãy tính số đòn ít nhất để tiêu diệt quái vật.

t truy vấn độc lập.

Dữ liệu vào

  • Dòng đầu chứa số nguyên t: số lượng truy vấn.
  • Với mỗi truy vấn:
    • Dòng đầu chứa hai số nguyên nx: số loại đòn và số đầu ban đầu của quái vật.
    • n dòng tiếp theo, dòng thứ i chứa hai số nguyên dihi: mô tả đòn đánh loại i.

Dữ liệu ra

Với mỗi truy vấn, in ra số đòn ít nhất cần tung để tiêu diệt quái vật. Nếu không thể tiêu diệt được, in ra 1.

Ràng buộc

  • 1t100
  • 1n100, 1x109
  • 1di,hi109

Ví dụ

Input Output Giải thích
3
3 10
6 3
8 2
1 4
4 10
4 1
3 2
2 6
1 100
2 15
10 11
14 100
2
3
-1
Truy vấn 1: tung đòn 1 (số đầu thành 106+3=7), rồi tung đòn 2 (chém 87 nên còn 0). Truy vấn 2: tung đòn 1 ba lần. Truy vấn 3: không thể tiêu diệt.
1
2 15
10 11
14 100
-1 Không có đòn nào chém hết 15 đầu ngay, và mọi đòn đều làm số đầu không giảm về lâu dài.

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.46 awk 1.3.4 gcc 16.1.0 csc 6.12.0.200 g++ 16.1.0 g++-themis 16.1.0 g++17 16.1.0 g++20 16.1.0 g++23 16.1.0 clang++ 22.1.6 dmd 2.112.0 dart 3.12.1 gforth 0.7.3 gfortran 12.2.0 go 1.26.3 groovyc 5.0.6 javac 25.0.3 node 26.2.0 kotlinc 2.3.21 sbcl 2.2.9 lua 5.4.8 nim 2.2.10 fpc 3.2.2 fpc-themis 3.2.2 perl 5.36.0 php 8.5.6 pike 8.0 pypy3 7.3.23 python3 3.14.5 racket 8.7 ruby 4.0.5 rustc 1.96.0 csc 5.3.0 ctoj-scratch 0.0.1 sed 4.9 tclsh 8.6 bun 1.3.14 deno 2.8.1 v 0.5.1 zig 0.16.0