//1 #include<iostream> using namespace std; int main(){ int n, num; while (cin >> n) { for (int i = 0; i<n; i++) { cin >> num; int ans = 0; int j=0; for (j = 1; j*j<num; j++) { if (num%j == 0) ans += 2; } if (j*j == num) ans++; cout << ans << endl; } } return 0; } //2 如果是外置函数,则会运行超时 #include<iostream> using namespace std; int numOfDivisor(int num){ int ans = 0; int i; for (i = 1; i*i<num; i++){ if (num%i == 0) ans += 2; } if (i*i == num) ans++; return ans; } int main(){ int n, num; while (cin >> n) { for (int i = 0; i<n; i++) { cin >> num; cout << numOfDivisor(num) << endl; } } return 0; } //3 // #include <iostream> // #include <cstdio> // #include<math.h> // using namespace std; // int main() { // int n; // while (cin >> n) { // int num; // for (int i = 0; i < n; i++) { // cin >> num; // int sum = 0; // int bound = sqrt(num); // for (int j = 1; j <= bound; j++) { // if (num % j == 0) { // sum += 2; // } // } // if (bound * bound == num)sum--; // cout << sum << endl; // } // } // return 0; // } //4 // #include <iostream> // #include <set> // using namespace std; // // 计算约束个数 // int yueshu(int num) // { // set<int> s; // for(int i=1; i*i<num; ++i) // { // if(num%i==0) // { // s.emplace(i); // s.emplace(num/i); // } // } // return s.size(); // } // int main() { // int a; // cin>>a; // while (a--) { // 注意 while 处理多个 case // int num; // cin >> num; // cout << yueshu(num) << endl; // } // system("pause"); // return 0; // } // // 64 位输出请用 printf("%lld")