Trò chơi Josephus

Xem PDF



Tác giả:
Dạng bài
Điểm: 1600 (p) Thời gian: 1.0s Bộ nhớ: 640M Input: bàn phím Output: màn hình

Trò chơi Josephus được thể hiện như sau:

  • \(n\) người (được đánh số từ \(1\) đến \(n\)) được xếp lần lượt trên vòng tròn.
  • Trong quá trình trò chơi diễn ra, "người thứ hai" sẽ lần lượt bị đưa ra khỏi vòng tròn cho đến khi chỉ còn một người.

\(q\) câu hỏi: Bạn được cho trước số nguyên dương \(n\), tìm số thứ tự của người cuối cùng.

Minh họa

  • \(n=5\)

  • \(n=6\)

  • \(n=7\)

  • \(n=13\)

Input

  • Dòng đầu chứa 2 số nguyên dương \(q\) - là số câu hỏi.
  • \(q\) dòng tiếp theo mỗi dòng chứa hai số nguyên dương \(n\).

Output

  • \(q\) dòng, mỗi dòng chứa số thứ tự của người cuối cùng.

Constants

  • \(1 \leq q \leq 10\)\(1 \leq n \leq 10^9\)

Example

Test 1

Input
4
5
6
7
13
Output
3
5
7
11

Bình luận


  • 11
    longkold00    10:15 a.m. 10 Tháng 10, 2021

    viết thử các th từ 1->8 ta sẽ thấy nếu n=2^k thì người 1 luôn thắng, nếu n+1 thì người thứ 1+2,... => ct tổng quát sẽ là 2*(n-2^k)+1 trong đó k là số mũ lớn nhất để 2^k<=n


    • 2
      nguyentheanh2012    9:57 a.m. 16 Tháng 9, 2023 chỉnh sửa 2

      anh giải thích rõ hơn được ko ạ.Em cảm ơn


      • 2
        VoBaThongL921    11:45 a.m. 10 Tháng 10, 2021

        lại ac với công thức của anh nữa:> Thanks anh

        7 bình luận nữa