Thả trứng , trò giải trí tuổi teen

Xem dạng PDF

Gửi bài giải


Điểm: 0,28 (OI)
Giới hạn thời gian: 0.38s
Giới hạn bộ nhớ: 512M
Input: stdin
Output: stdout

Nguồn bài:
Folklore
Dạng bài
Ngôn ngữ cho phép
C, C++, Go, Java, Kotlin, Pascal, PyPy, Python, Rust, Scratch

Tụi trẻ con có được ~N~ quả trứng có độ cứng như nhau. Trong giờ ra chơi chúng quyết định thử xem trứng cứng đến mức nào bằng cách thả trứng từ trên tầng cao xuống đất xem ở độ cao nào thì trứng sẽ vỡ. Giả sử độ cứng của trứng là ~E~ thì thả trứng ở các tầng từ tầng ~1~ ~\rightarrow~ tầng ~E~ trứng sẽ không vỡ, và thả trứng bắt đầu ở tầng ~E+1~ trở đi trứng sẽ vỡ. Cách làm nông dân nhất là ta cứ đem thả từng tầng một từ thấp lên cao đến tầng nào trứng vỡ là biết ngay nhưng mà như thế phải thả nhiều lần quá, giờ ra chơi của bọn trẻ con không được lâu đến thế, hơn nữa tụi nó có tới ~N~ quả trứng nên có vỡ ~1~ số quả cũng chẳng sao , miễn là đạt được mục đích của mình.

Bạn là một lập trình viên siêu hạng , sau khi nghe nỗi niềm của bọn trẻ , bạn có thể giúp gì được bọn trẻ không? Hay là sẽ chịu thua? Nếu giải được bài toán hóc búa này thì bạn hãy thử submit xem nào. Biết rằng toà nhà trường học của bọn trẻ có tất cả ~M~ tầng (nếu trứng không vỡ ở tầng ~M~ thì có thể coi như nó có độ cứng là M).

Chú ý nếu không cẩn thận sẽ rất dễ bị ngộ nhận. Dù làm cách nào đi nữa thì vấn đề muôn thuở vẫn là phải chứng minh được tính đúng đắn của thuật toán.

Input

Dòng ~1~: số test ~T (1 \le T \le 10000)~.

~T~ dòng tiếp theo mỗi dòng gồm ~2~ số nguyên ~N, M (1 \le N, M \le 1000)~.

Output

Với mỗi test ghi ra số lượng lần thả ít nhất ~(X)~ để có thể xác định được rõ ràng độ cứng của quả trứng (kể cả trong trường hợp xấu nhất thì với ~X~ lần thả cũng có thể xác định được độ cứng của quả trứng).

Sample Input

2
1 10
2 5

Sample Output

10
3

Bình luận

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



  • 0
    Zin_Nguyen2k8  đã bình luận lúc 4, Tháng 9, 2023, 12:54

    không hiểu đề