Chia hết cho K


Submit solution

Points: 1
Time limit: 1.0s
Memory limit: 98M

Author:
Problem type
Allowed languages
Ada, Assembly, Awk, C, C++, C11, CLANG, CLANGX, Classical, COBOL, Coffee, CSC, D lang, DART, F95, FORTH, Fortrn, GAS32, GO, Haskell, Itercal, Java, kotlin, LEAN, LISP, LUA, MONOVB, Nasm, OCAML, Pascal, Perl, php, PIKE, prolog, Pypy, Python, Ruby 2, RUST, Scala, SCM, SED, SWIFT, TCL, TUR, V8JS, VB, ZIG

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.


Comments

There are no comments at the moment.