Submission #6426646
Source Code Expand
#include<iostream> using namespace std; const int mod=1E9+7; int n,m,ans=1,inv[1E5+7]; int F(int a){ int ret=1; for(int i=0;i<a;++i)ret=1ll*ret*(m+i)%mod; for(int i=1;i<=a;++i) ret=1ll*ret*inv[i]%mod; return ret; } int main(){ ios::sync_with_stdio(0); cin>>n>>m; inv[0]=inv[1]=1; for(int i=2;i<=1E5;++i) inv[i]=1ll*(mod-mod/i)*inv[mod/i]%mod; n=abs(n); for(int i=2;i<=1E5;++i){ int cnt=0; while(n%i==0)n/=i,++cnt; ans=1ll*ans*F(cnt)%mod; } if(n>1)ans=1ll*ans*F(1)%mod; for(int i=1;i<m;++i)ans=2ll*ans%mod; cout<<ans<<"\n"; return 0; }
Submission Info
Submission Time | |
---|---|
Task | D - 表現の自由 ( Freedom of expression ) |
User | wess_shi |
Language | C++14 (GCC 5.4.1) |
Score | 0 |
Code Size | 591 Byte |
Status | CE |
Compile Error
./Main.cpp:4:24: error: size of array ‘inv’ has non-integral type ‘double’ int n,m,ans=1,inv[1E5+7]; ^