SẮP XẾP DÃY SỐ

Cho hai số nguyên dương \(n\)\(m\). Ta sắp xếp \(n\) số nguyên dương liên tiếp \(1;\ 2;\ 3;\ \ldots;\ 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\)\(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: Gồm ba số nguyên dương \(n,\ m,\ t\) nằm trên một dòng \((1 < m < n \leq \ 10^{16};\ m \leq 10^{6}\ ;\ t \leq n)\), mỗi số cách nhau ít nhất một dấu cách.

Kết quả: Ghi một số \(X\) là số hạng thứ \(t\) trong dãy sắp thứ tự như trên.

Ví dụ:

Input output
10 4 8 10

Bạn cần đăng nhập để nộp bài

hpcode.edu.vn
Code tích cực
Trong 24h
  1. nakato (8/16)
  2. tribinh (6/9)
  3. sythai (4/6)
Trong 7 ngày
  1. bao_khanh (61/90)
  2. nakato (46/115)
  3. phamnhi (26/104)
Trong 30 ngày
  1. phamnhi (74/259)
  2. kiennhientv (72/163)
  3. npk1605 (68/96)
Thống kê
AC/Sub: 97887/180710
Pascal: 17121
C++: 130348
Python: 33199
Lượt xem/tải tests: 39159

Lưu Hải Phong - 2020
[email protected]