省略
省略
C++に変換後のコードはこちら
AhoCorasick_Sum<int> aho;
Modint dp[1000], nx[1000];
{
int @N; ll @L, @R;
int ds, d[100], node, i, j, k;
ll a = 1, b = 1;
aho.malloc(1000, 10);
while(a <= R){
(a,b) = (b,a+b);
if(L <= a <= R){
ds = Digit(a, d);
aho.addWord(d, ds, 1);
}
}
aho.construct();
node = aho.node;
dp[0] = 1;
rep(N){
rep(i,node) nx[i] = 0;
rep(i,node) rep(j,10){
k = aho.next(i,j);
if(aho.sum[k]) continue;
nx[k] += dp[i];
}
rep(i,node) dp[i] = nx[i];
}
wt(sum(dp(node))-1);
}
Current time: 2024年04月26日06時56分35秒
Last modified: 2020年10月24日18時43分03秒 (by laycrs)
Tags: Competitive_Programming_Incomplete yukicoder
トップページに戻る
Logged in as: unknown user (not login)