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. giahuyloc (14/34)
  2. ducviet (9/17)
  3. khangham (6/11)
Trong 7 ngày
  1. tongtailanhlung (40/105)
  2. sekenadddddddd2 (23/53)
  3. phatkrt (20/67)
Trong 30 ngày
  1. qtaydzs1tg (213/356)
  2. thang8a1 (134/263)
  3. ifindmyself1 (114/241)
Thống kê
AC/Sub: 120817/226949
Pascal: 18142
C++: 157988
Python: 50747
Lượt xem/tải tests: 42082

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