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. andanhnek (14/32)
  2. _winnguyen_ (7/8)
  3. thang8a1l2 (4/11)
Trong 7 ngày
  1. cosu (48/85)
  2. hlammm (16/32)
  3. andanhnek (16/35)
Trong 30 ngày
  1. cosu (100/157)
  2. tranducbaolam02 (90/129)
  3. vo_tan_dung (58/128)
Thống kê
AC/Sub: 120817/226949
Pascal: 18142
C++: 157988
Python: 50747
Lượt xem/tải tests: 43021

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