1 条题解
-
0
#include<bits/stdc++.h> using namespace std; #define int long long const int N=2e5+10,P=998244353; int qpow(int a,int b){int ans=1;for(;b;b>>=1,a=a*a%P)if(b&1)ans=ans*a%P;return ans;} map<int,int>dp;int n; int dfs(int x) { if(n%x)return dp[x]=-1,0; if(n==x)return dp[x]=1; if(dp[x])return (dp[x]==-1?0:dp[x]); int sum=0; for(int i=2;i<=6;i++)sum=(sum+dfs(x*i))%P; sum=sum*qpow(5,P-2)%P; return dp[x]=sum; } signed main() { cin>>n; dfs(1); cout<<dp[1]; return 0; }
- 1
信息
- ID
- 9164
- 时间
- 2000ms
- 内存
- 1024MiB
- 难度
- 10
- 标签
- 递交数
- 5
- 已通过
- 4
- 上传者