Submission #1066363
Source Code Expand
#include <stdio.h> #define MIN(a,b) ((a)<(b)?(a):(b)) #define MAX(a,b) ((a)>(b)?(a):(b)) #define ll long long #define NUM 1000000007 int prime[500]; int main(void){ int n; int ptr=0; ll ans=1; prime[ptr++]=2; scanf("%d",&n); for(int i=3;i<=n;i+=2){ int flag=0; for(int j=0;prime[j]*prime[j]<=i;j++){ if(i%prime[j]==0){ flag=1; break; } } if(!flag) prime[ptr++] = i; } for(int i=0;i<ptr;i++){ int p=prime[i]; int count=0; while(p<=n){ count += n/p; p *= prime[i]; } ans = ans*(count+1)%NUM; } printf("%lld\n",ans); return 0; }
Submission Info
Submission Time | |
---|---|
Task | C - Factors of Factorial |
User | trainstation |
Language | C (GCC 5.4.1) |
Score | 300 |
Code Size | 688 Byte |
Status | AC |
Exec Time | 1 ms |
Memory | 128 KB |
Compile Error
./Main.c: In function ‘main’: ./Main.c:12:2: warning: ignoring return value of ‘scanf’, declared with attribute warn_unused_result [-Wunused-result] scanf("%d",&n); ^
Judge Result
Set Name | Sample | All | ||||
---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 300 / 300 | ||||
Status |
|
|
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 | 1 ms | 128 KB |
sample_02.txt | AC | 1 ms | 128 KB |
sample_03.txt | AC | 1 ms | 128 KB |
subtask_1_certain_01.txt | AC | 1 ms | 128 KB |
subtask_1_certain_02.txt | AC | 1 ms | 128 KB |
subtask_1_certain_03.txt | AC | 1 ms | 128 KB |
subtask_1_certain_04.txt | AC | 1 ms | 128 KB |
subtask_1_rand_01.txt | AC | 1 ms | 128 KB |
subtask_1_rand_02.txt | AC | 1 ms | 128 KB |
subtask_1_rand_03.txt | AC | 1 ms | 128 KB |