結果
問題 |
No.573 a^2[i] = a[i]
|
ユーザー |
![]() |
提出日時 | 2025-05-17 18:14:01 |
言語 | C++17 (gcc 13.3.0 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 33 ms / 2,000 ms |
コード長 | 647 bytes |
コンパイル時間 | 2,064 ms |
コンパイル使用メモリ | 191,872 KB |
実行使用メモリ | 7,844 KB |
最終ジャッジ日時 | 2025-05-17 18:14:06 |
合計ジャッジ時間 | 3,500 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 47 |
ソースコード
#include<bits/stdc++.h> #define int long long const int mod=1e9+7; using namespace std; int ycl[100005],ny[100005]; int ksm(int a,int n){ int ans=1,k=mod; int a2=a,n2=n; while(n>0){ if(n%2==1) ans=((ans%k)*(a%k))%k; n=n/2; a=(a%k)*(a%k); } return ans%k; } void sol(){ int n,ans=0; cin>>n; ycl[1]=ycl[0]=1; ny[1]=1; ny[0]=1; for(int i=2;i<=n;i++) { ycl[i]=ycl[i-1]*i%mod; ny[i]=ksm(ycl[i],mod-2)%mod; }for(int i=0;i<=n;i++){ ans+=(((ycl[n]*ny[i]%mod)*ny[n-i])%mod*ksm(n-i,i))%mod; ans%=mod; }cout<<ans%mod; } signed main(){ // freopen("oncemore.in","r",stdin); // freopen("oncemore.out","w",stdout); sol(); }