Chia hết cho k

Xem dạng PDF

Gửi bài giải

Điểm: 1,00 (OI)
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 256M
Input: chiahet.inp
Output: chiahet.out

Người đăng:
Dạng bài
Ngôn ngữ cho phép
C, C++, Java, Pascal, PyPy, Python

Cho 2 số nguyên ~n~ và ~k~

Bạn sẽ tạo một mảng gồm n số nguyên dương ~a_1,a_2,...,a_n~ sao cho tổng ~(a_1 + a_2 +...+ a_n)~ chia hết cho ~k~ và phần tử có giá trị lớn nhất trong mảng ~a~ phải là giá trị nhỏ nhất có thể.

Phần tử có giá trị lớn nhất trong mảng và phải là giá trị nhỏ nhất có thể - có thể là bao nhiêu?

Input

Chứa hai số nguyên ~n~ và ~k~ ~(1 \le n,k \le 10^9)~

Output

In ra một số nguyên là phần tử có giá trị lớn nhất trong mảng và phải có giá trị nhỏ nhất có thể sao cho tổng ~(a_1 + a_2 +...+ a_n)~ chia hết cho ~k~

VD

Input1

1 5

Output1

5

Input2

8 8

Output2

1

Input3

2 5

Output3

3

Giải thích:

Trong trường hợp 1: ~n~ = 1, do đó, mảng bao gồm một phần tử ~a_1~ và nếu chúng ta tạo ~a_1~ = 5 thì nó sẽ chia hết cho ~k~ = 5 và nhỏ nhất có thể.

Trong trường hợp 2: ~n~ = 8, chúng ta có thể tạo mảng gồm 5 phần tử ~a~ = [1,1,1,1,1,1,1,1]. Tổng chia hết cho ~k~ = 8 và số lớn nhất trong mảng, cũng như nhỏ nhất có thể bằng 1.

Trong trường hợp 3: ~n~ = 2, chúng ta có thể tạo mảng gồm 2 phần tử ~a~ = [2,3]. Tổng chia hết cho ~k~ = 5. Như vậy số lớn nhất trong mảng và có giá trị nhỏ nhất có thể là bằng 3.


Bình luận

Hãy đọc nội quy trước khi bình luận.


Không có bình luận tại thời điểm này.