Điểm:
100
Thời gian:
1.0s
Bộ nhớ:
640M
Input:
bàn phím
Output:
màn hình
Cho số nguyên dương \(n\). Đếm số ước của \(n\) có ước số là \(2\).
Input
- \(t (t\le 100)\) - số test
- Mỗi test chứa \(1\) số nguyên dương \(n(n \le 10^9)\)
Output
- Số ước số thỏa mãn đề bài
Example
Test 1
Input
2
9
8
Output
0
3
Note
- \(9\) có các ước như sau \(\{1, 3, 9\}\) và không hề có bất kỳ ước nào có ước số là \(2\) nên đáp án là \(0\).
- \(8\) có các ước như sau \(\{1, 2, 4, 8\}\) và ba ước \(2,4,8\) đều có ước số \(2\) nên đáp án là \(3\).
Bình luận
include <iostream>
đây nè :
def kt(n):
s = 0
for i in range(1, int(n**0.5) + 1): # Chỉ xét các ước đến căn bậc hai của n
if n % i == 0:
if i % 2 == 0: # Nếu ước i là số chẵn
s += 1
if i != n // i and (n // i) % 2 == 0: # Kiểm tra ước còn lại và là số chẵn
s += 1
return s
t = int(input())
for _ in range(t):
x = int(input())
print(kt(x))
code python
https://i.imgur.com/gXRv5CQ.png
Ước có ước là 3-1+1-1+1-1+1-1+1-1
100 khó nhai dữ :V
Bình luận bị ẩn vì nhiều phản hồi tiêu cực. Nhấp vào đây để mở.
Bình luận bị ẩn vì nhiều phản hồi tiêu cực. Nhấp vào đây để mở.
em ko bít làm bài này bằng Py
meme :))
ông hoàng meme :))
"Đếm số ước số của n có ước là 2" vậy là tìm các ước của n chia hết cho 2 phải không ạ vậy sao em thấy số 7 và 5 trong bộ test nó lại ra 1 vậy anh ?
1 bình luận nữa