Chiến Đấu Quái Vật

Xem dạng PDF

Gửi bài giải

Điểm: 1,00 (OI)
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 256M
Input: stdin
Output: stdout

Nguồn bài:
Châu Nhật Tăng
Dạng bài
Ngôn ngữ cho phép
C, C++, Java, Kotlin, Pascal, PyPy, Python, Scratch

Nhật Tăng là một sinh viên công nghệ thông tin tại trường đại học Quốc tế Miền Đông. Tại ngôi trường hiện đại tiên tiến này, cậu đã cùng bạn tạo ra trò chơi nhập vai đối kháng có tên Chiến đấu thắng quái vật. Trong trò chơi này, người chơi điều khiển đội gồm ~N~ nhân vật, mỗi nhân vật sẽ có lượng ~HP~ (máu) và ~ATK~ (sức mạnh tấn công). Ở trận đấu thứ i, các nhân vật sẽ tấn công để tiêu tiêu diệt quái vật thứ i. Bắt đầu trận đấu, các nhân vật sẽ được khôi phục lượng ~HP~ ban đầu, người chơi sẽ chọn các nhân vật còn sống ~(HP > 0)~ để tấn công quái vật.

Mỗi lượt chiến sẽ được diễn ra như sau:

  • Quái vật bị giảm ~HP~ theo ~ATK~ của nhân vật.
  • Sau đó nếu quái vật còn sống, nhân vật bị giảm ~HP~ theo ~ATK~ của quái vật.

Mục tiêu của mỗi trận đấu là tiêu diệt quái vật ~(HP = 0)~ với số lượt tấn công tối thiểu. Nếu không thể hạ gục quái vật bằng các nhân vật, in ra impossible.

Input

  • Dòng đầu: Gồm hai số nguyên ~N~ ~(N \leq 10^5)~ và ~M~ ~(M \leq 100)~ lần lượt là số lượng nhân vật và số trận đấu.
  • ~N~ dòng sau: Mỗi dòng gồm hai số nguyên dương ~A_i~ và ~B_i~ tương ứng với ~HP~ và ~ATK~ của nhân vật thứ ~i~ ~(A_i, B_i \leq 10^{18})~.
  • ~M~ dòng tiếp: Mỗi dòng gồm hai số nguyên dương ~C_j~ và ~D_j~ cho ~HP~ và ~ATK~ của quái vật thứ ~j~ ~(C_i, D_i \leq 10^{18})~.

Output

  • In ra ~M~ dòng: Số lượt tấn công tối thiểu để tiêu diệt quái vật, hoặc impossible nếu không thể chiến thắng.

Sample Input

4 2
15 10
9 15
10 3
7 4
49 5
50 10

Sample Output

4
impossible

Notes

  • Trận ~1~:
    • Lượt ~1~: Chọn nhân vật ~2~
      • Gây ~15~ sát thương lên quái vật, ~HP~ của quái vật còn ~34~.
      • Nhân vật ~2~ nhận lại sát thương ~5~, ~HP~ của nhân vật còn ~4~
    • Lượt ~2~: Chọn nhân vật ~1~
      • Gây ~10~ sát thương lên quái vật, ~HP~ của quái vật còn ~24~.
      • Nhân vật ~1~ nhận lại sát thương ~5~, ~HP~ của nhân vật ~1~ còn ~10~.
    • Lượt ~3~: Chọn nhân vật ~2~
      • Gây ~15~ sát thương lên quái vật, ~HP~ của quái vật còn ~9~.
      • Nhân vật ~2~ nhận lại sát thương ~5~, ~HP~ của nhân vật còn ~0~ (nhân vật ~2~ đã chết).
    • Lượt ~4~: Chọn nhân vật ~1~
      • Gây ~10~ sát thương lên quái vật, ~HP~ của quái vật còn ~0~ (quái vật đã chết).
    • Tổng sát thương là ~50~ ~→~ đủ để hạ quái vật. Tổng số lượt tấn công là ~4~.
  • Trận ~2~:
    • Dù dùng tất cả các nhân vật, tổng sát thương không đủ hoặc họ chết trước khi gây đủ sát thương ~→~ không thể tiêu diệt ~→~ impossible.

Bình luận

Hãy đọc nội quy trước khi bình luận.


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