Cho số n, đếm ước số, kiểm tra chẵn/lẻ.
Tối ưu: duyệt đến √n, mỗi cặp ước cộng 2, trừ khi bình phương thì cộng 1.
Ví dụ
Input: 10 -> Ước: 1,2,5,10 (4 ước) -> Even
Chương trình C++ ví dụ
#include <iostream>
#include <cmath>
using namespace std;
int main() {
int n=10, count=0;
for (int i=1; i<=sqrt(n)+1; i++)
if (n%i==0) count += (n/i==i) ? 1 : 2;
cout << (count%2==0 ? "Even" : "Odd");
return 0;
}