QOJ.ac
QOJ
ID | 题目 | 提交者 | 结果 | 用时 | 内存 | 语言 | 文件大小 | 提交时间 | 测评时间 |
---|---|---|---|---|---|---|---|---|---|
#474631 | #8834. Formal Fring | ucup-team866 | RE | 0ms | 0kb | C++14 | 602b | 2024-07-12 21:13:41 | 2024-07-12 21:13:42 |
answer
#include <bits/stdc++.h>
using namespace std;
const int N = 1e6 + 6, MOD = 998244353;
int n, f[N], h[N], g[N];
int main() {
cin >> n, f[0] = 1;
for (int i=1; i<=n; i++)
f[i] = (f[i-1] + (i & 1 ? 0 : f[i>>1])) % MOD,
h[i] = __lg(i) ^ __lg(i + 1) ? __lg(i + 1) : h[i>>1];
for (int i=1; i<=20; i++) {
g[i] = f[(1<<i)-1];
for (int j=1; j<i; j++)
g[i] = (g[i] + 1ll * (MOD - g[j]) * f[(1<<i-j)-1]) % MOD;
}
for (int i=1; i<=n; i++) {
int ans = 0;
for (int j=1; j<=h[i]; j++)
ans = (ans + 1ll * g[j] * f[i^(1<<j)-1<<__lg(i)-j+1]) % MOD;
printf ("%d ", ans);
}
}
詳細信息
Test #1:
score: 0
Runtime Error
input:
10