Sâu dễ thương

View as PDF



Problem type
Allowed languages
C#, C++, Clang, Clang++, Cobol, D, Groovy, Haskell, Java, JS, Kotlin, Lua, Node JS, ObjectiveC, OCaml, Output, PHP, Prolog, Pypy, Pypy 3, Ruby, Rust, Scala, Scratch, Swift
Points: 200 Time limit: 5.0s Memory limit: 256M Input: stdin Output: stdout

Có một cây tre cao \(n\) mét (\(n\) là số nguyên dương). Ban đầu chú sâu ở gốc của cây tre !

Biết rằng, Cứ \(1\) phút, chú leo lên được \(u\) (mét), và sau đó, chú phải nghỉ ngơi trong \(1\) phút để lấy lại tinh thần, nhưng tiếc thay, trong quá trình nghỉ chú lại bị tụt xuống \(d\) mét.

Hỏi sao bao nhiêu phút, chú sâu leo lên được đỉnh của cây tre. (Ở đây ta hiểu là số phút ít nhất để chú sâu có thể lên được đỉnh cây tre)

Ví dụ: Với \(n=5, u=2, d=1\) thì

  • Phút thứ 1: Chú sâu leo lên được \(2m\)
  • Phút thứ 2: Chú sâu tụt xuống \(1m\) còn \(1m\)
  • Phút thứ 3: Chú sâu leo lên được \(2m\) thành \(3m\)
  • Phút thứ 4: Chú sâu tụt xuống \(1m\) còn \(2m\)
  • Phút thứ 5: Chú sâu leo lên được \(2m\) thành \(4m\)
  • Phút thứ 6: Chú sâu tụt xuống \(1m\) còn \(3m\)
  • Phút thứ 7: Chú sâu leo lên được \(2m\) thành \(5m\), đến được đỉnh cây tre

Vậy sau 7 phút chú sâu leo lên được đỉnh cây tre

Input

  • Dòng thứ nhất chứa số \(t(1\le t\le 100)\) - Thể hiện số testcase
  • \(t\) block tiếp theo, mỗi block gồm \(3\) dòng:
    • Dòng số 1 chứa số nguyên dương \(n\)
    • Dòng số 2 chứa số nguyên dương \(u\)
    • Dòng số 3 chứa số nguyên dương \(d\)

Biết rằng \(1\le n,u,d\le 1.000.000\)\(d<u\).

Output

  • Ứng với mỗi testcase, in ra đáp án cần tìm.

Example

Test 1

Input
2
5 
2 
1
6     
3 
1
Output
7
5

Scoring

  • Subtask \(1\) (\(60\%\) số điểm): \(1\le n\le 100\)
  • Subtask \(2\) (\(40\%\) số điểm): Không có điều kiện gì

Comments

There are no comments at the moment.