Nguồn đề bài: http://vn.spoj.com/problems/ANT/vn/
1. Đề bài ANT spoj
Họ nhà kiến tổ chức một trò chơi như sau để mừng năm mới. Những chú kiến quây thành một vòng tròn. Kiến chúa sẽ đưa ra một con số và gọi nó là số M (Mồi). Bắt đầu, kiến chúa đếm số 1, theo chiều kim đồng hồ, các chú kiến lần lượt đếm số tiếp theo. Đến lượt chú kiến đếm phải số đúng bằng số M thì sẽ phải đi ra khỏi vòng tròn. Việc đếm lại từ 1 bắt đầu từ chú kiến tiếp theo, theo chiều kim đồng hồ.
Trò chơi kết thúc, khi chỉ còn lại một chú kiến. Chú kiến đó sẽ nhận được món qùa đầu năm của họ nhà kiến.
Biết số chú kiến ban đầu trên vòng tròn và số M. Hãy xác định số thứ tự của chú kiến sẽ nhận được phần thưởng may mắn. Các chú kiến được đánh số thứ tự theo chiều kim đồng hồ, bắt đầu từ kiến chúa có số hiệu 1.
Dữ liệu
- Dòng 1: chứa số nguyên dương N, là số chú kiến trên vòng tròn.
- Dòng 2: chứa số nguyên dương M.
Kết qủa
Gồm 1 dòng duy nhất, chứa số thứ tự của chú kiến sẽ nhận được món qùa đầu năm
Giới hạn
- 1 ≤ N ≤ 1012.3 ≤ M ≤ 106.
- M ≤ N.
Ví dụ
Dữ liệu
7
3
Kết quả
4
Giải thích
Thứ tự những chú kiến phải ra khỏi vòng tròn lần lượt là: 3 6 2 7 5 1.
Chú kiến 4 là chú kiến may mắn!
2. Hướng dẫn ANT spoj
Tham khảo bài viết này: https://kienthuc24h.com/bai-toan-josephus-ai-se-la-nguoi-cuoi-cung/
3. code Tham khảo ANT spoj
var d, m, n: QWord; begin ReadLn(n, m); d := m * n; while d > n do d := d + (d - n - 1) div (m - 1) - n; Write(d); end.
cái link bài toán lỗi rồi AD ơi, chẳng tìm thấy gì cả
Chào bạn, rất xin lỗi bạn về bài viết được đề cập đến trong bài. Do mình đã xóa nên hiện không truy cập được, bạn có thể tìm lời giải trên các trang mạng khác nhé.
ok ad, cảm ơn ad ạ
có chỗ nào nói rõ về bài toán này khôngn