fork download
  1. #include <bits/stdc++.h>
  2. #define FNAME "CANDY"
  3. using namespace std;
  4. const int MAXN = 1e6 + 1;
  5. typedef long long ll;
  6. const long long MOD = 1e9 + 7;
  7.  
  8. void fastip() {
  9. ios_base::sync_with_stdio(0);
  10. cin.tie(0); cout.tie(0);
  11. if (fopen(FNAME".inp", "r")) {
  12. freopen(FNAME".inp", "r", stdin);
  13. freopen(FNAME".out", "w", stdout);
  14. }
  15. }
  16.  
  17. int n, q;
  18.  
  19. vector<int> Sieve(MAXN);
  20.  
  21. void Sieve_build(){
  22. for(int i = 2; i <= MAXN ; i++){
  23. Sieve[i] = i;
  24. }
  25. for(int i = 2; i <= MAXN ; i++){
  26. if(Sieve[i] == i){
  27. for(int j = 2 * i; j <= MAXN ; j += i){
  28. Sieve[j] = i;
  29. }
  30. }
  31. }
  32. }
  33.  
  34. int main(){
  35. fastip();
  36. Sieve_build();
  37.  
  38. cin >> q;
  39.  
  40. while(q--){
  41. cin >> n;
  42. unordered_map<int,int> mp;
  43. while(n > 1){
  44. int p = Sieve[n];
  45. mp[p]++;
  46. n /= p;
  47. }
  48. int res = 1;
  49. for(pair<int,int> x : mp){
  50. res *= (x.second + 1);
  51. }
  52. cout << res << endl;
  53. }
  54.  
  55. return 0;
  56. }
Success #stdin #stdout 0.01s 6976KB
stdin
Standard input is empty
stdout
Standard output is empty