DOWN TO ZERO

Bạn được cho \(q\) truy vấn, mỗi truy vấn được cho một số nguyên \(N\). Bạn có thể thực hiện bất kỳ 1 trong 2 thao tác sau:

1: Nếu có thể tách \(N\) thành hai số \(a\)\(b\) sao cho \(N = a \times b\ (a ≠ \ 1,\ b ≠ 1)\) thì có thể chuyển \(N = max(a,b)\)

2: Giảm giá trị của \(N\) xuống 1

Hãy cho biết số thao tác ít nhất để chuyển số \(N\) thành 0.

Dữ liệu vào:

+ Dòng đầu tiên ghi số nguyên dương \(q\) là số lượng truy vấn.

+ \(q\) dòng tiếp theo, mỗi dòng ghi một số nguyên \(N\)

Giới hạn:

\[1 \leq q \leq 10^{3}\]

\[0 \leq N \leq 10^{6}\]

Ví dụ:

Input Output
2
3
4
3
3

Giải thích:

\(3 \rightarrow 2 \rightarrow 1 \rightarrow 0\): 3 bước

\(4 \rightarrow 2 \rightarrow 1 \rightarrow 0\): 3 bước

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

hpcode.edu.vn
Code tích cực
Trong 24h
  1. nongvantien11 (34/51)
  2. nnminh1806 (18/36)
  3. nhuhuyn (14/16)
Trong 7 ngày
  1. nongvantien11 (99/155)
  2. qtaydzs1tg (72/135)
  3. trungo0 (49/91)
Trong 30 ngày
  1. nongvantien11 (192/300)
  2. trungo0 (131/242)
  3. ngocbichh (110/267)
Thống kê
AC/Sub: 120817/226949
Pascal: 18142
C++: 157988
Python: 50747
Lượt xem/tải tests: 41085

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