Submission #1067328


Source Code Expand

#include<iostream>
#include<string>
#include<cstdio>
#include<map>
#include<stack>
#include<queue>

using namespace std;

int prime[1000];
int num[1001];
int p;
void prime_s() {
  prime[0] = 2;
  p = 1;
  for(int i = 3; i <= 1000;i += 2) {
    int j;
    for(j = 0; j < p; j++) {
      if(i % prime[j] == 0) break;
    }
    if(j == p) {
      prime[p++] = i;
    }
  }
}

//素因数分解する
void d(int n) {
  for(int i = 0; i < p; i++) {
    while(n % prime[i] == 0) {
      n /= prime[i];
      num[prime[i]]++;
    }
  }
}

int main() {
  int n;
  cin >> n;

  long long  ans1 = 1;
  long long  ans2 = 0;
  prime_s();
  for(int i = 1; i <= n; i++) {
    d(i);
  }

  long long ans_n = 0;
  for(int i = 1; i < 1001; i++) {
      ans1 *= num[i] + 1;
      if(ans1 >= 1000000007){
        ans1 = ans1 % 1000000007;
      }
  }
  cout << ans1 % 1000000007<< endl;

  return 0;
}

Submission Info

Submission Time
Task C - Factors of Factorial
User yamada_k_25
Language C++14 (GCC 5.4.1)
Score 300
Code Size 941 Byte
Status AC
Exec Time 3 ms
Memory 256 KB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 300 / 300
Status
AC × 3
AC × 7
Set Name Test Cases
Sample sample_01.txt, sample_02.txt, sample_03.txt
All subtask_1_certain_01.txt, subtask_1_certain_02.txt, subtask_1_certain_03.txt, subtask_1_certain_04.txt, subtask_1_rand_01.txt, subtask_1_rand_02.txt, subtask_1_rand_03.txt
Case Name Status Exec Time Memory
sample_01.txt AC 3 ms 256 KB
sample_02.txt AC 2 ms 256 KB
sample_03.txt AC 3 ms 256 KB
subtask_1_certain_01.txt AC 3 ms 256 KB
subtask_1_certain_02.txt AC 3 ms 256 KB
subtask_1_certain_03.txt AC 3 ms 256 KB
subtask_1_certain_04.txt AC 3 ms 256 KB
subtask_1_rand_01.txt AC 3 ms 256 KB
subtask_1_rand_02.txt AC 3 ms 256 KB
subtask_1_rand_03.txt AC 3 ms 256 KB