Sắp xếp dãy số

View as PDF

Submit solution

Points: 200.00
Time limit: 1.0s
Memory limit: 64M
Input: stdin
Output: stdout

Author:
Problem type
Allowed languages
C, C++, GAS64, Pascal, Perl, PHP, Python, Sed, TCL, Text

Cho hai số nguyên dương ~N~ và ~M~. Ta sắp xếp ~N~ số nguyên dương liên tiếp ~1; 2; 3; …; N~ thành một dãy gồm có ~M~ đoạn liên tiếp như sau:

  • Đoạn thứ nhất gồm tất cả các số chia hết cho ~M~;
  • Đoạn thứ hai gồm tất cả các số chia ~M~ dư 1;
  • Đoạn thứ ba gồm tất cả các số chia ~M~ dư 2;
  • …;
  • Đoạn thứ ~M~ gồm tất cả các số chia ~M~ dư ~M – 1~.

Các số trong mỗi đoạn cũng được sắp xếp theo thứ tự tăng dần.

Yêu cầu: Cho trước 3 số nguyên dương ~N; M; T~. Tìm số thứ ~T~ trong dãy sắp thứ tự như trên.

Ví dụ: Với ~N = 10; M = 4; T = 8~. Dãy số được sắp xếp như sau: ~4; 8; 1; 5; 9; 2; 6; 10; 3; 7~. Số hạng thứ ~8~ trong dãy trên là ~10~

Dữ liệu vào

  • Chứa ba số nguyên dương ~N; M; T~ nằm trên một dòng (~1 < M < N ≤ 10^{16}; M ≤ 10^6 ; T ≤ N~), mỗi số cách nhau ít nhất một dấu cách.

Kết quả

  • Ghi ra một số ~x~ là số hạng thứ ~T~ trong dãy sắp thứ tự như trên.

Sample Input

10 4 8

Sample Output

10


Comments

Please read the guidelines before commenting.


There are no comments at the moment.