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
eq 1,\ b
eq 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. npk1605 (5/10)
  2. tuythoi213 (4/6)
  3. road_voi_2026 (3/7)
Trong 7 ngày
  1. nguyenanhvu (40/61)
  2. khieuquan (35/59)
  3. ngokhang (27/55)
Trong 30 ngày
  1. quechi (85/105)
  2. dangphong3108 (79/125)
  3. kiennhientv (79/179)
Thống kê
AC/Sub: 97887/180710
Pascal: 17121
C++: 130348
Python: 33199
Lượt xem/tải tests: 38905

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