結果
問題 |
No.2318 Phys Bone Maker
|
ユーザー |
|
提出日時 | 2023-05-26 21:47:22 |
言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
結果 |
WA
|
実行時間 | - |
コード長 | 447 bytes |
コンパイル時間 | 1,629 ms |
コンパイル使用メモリ | 175,028 KB |
実行使用メモリ | 6,824 KB |
最終ジャッジ日時 | 2024-12-25 06:09:48 |
合計ジャッジ時間 | 4,952 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 1 WA * 2 |
other | AC * 3 WA * 42 |
ソースコード
#include<bits/stdc++.h> using namespace std; const int mod=998244353; long long n; int main(){ scanf("%lld",&n); vector<long long>w; for (long long i=1;1ll*i*i<=n;i++) if (n%i==0){ w.push_back(i); if (1ll*i*i!=n) w.push_back(n/i); } sort(w.begin(),w.end()); vector<int>dp((int)w.size(),0); dp[0]=1; for (int i=1;i<w.size();i++) for (int j=0;j<i;j++) if (w[i]%w[j]==0) dp[i]=(dp[i]+dp[j])%mod; printf("%d\n",dp[(int)dp.size()-1]); }