QOJ.ac
QOJ
ID | 题目 | 提交者 | 结果 | 用时 | 内存 | 语言 | 文件大小 | 提交时间 | 测评时间 |
---|---|---|---|---|---|---|---|---|---|
#864247 | #9680. 数字变换 | L_Hospital_# | 6 | 6646ms | 84672kb | C++14 | 843b | 2025-01-20 12:49:23 | 2025-01-20 12:49:24 |
Judging History
answer
#include<bits/stdc++.h>
# define int long long
# define rep(i, j, k) for (signed i = j; i <= k; ++i)
# define N 5000100
# define mod 998244353
using namespace std;
int l, r, B, dp[N + 5], tmp[N + 5], ans[N + 5];
signed main()
{
ios::sync_with_stdio(false); cin.tie(0), cout.tie(0);
cin >> l >> r >> B;
dp[1] = ans[1] = 1;
while (B--)
{
for (int i = 1; i < N; i += 4) tmp[i] = dp[i - 1] + dp[i + 1], tmp[i + 1] = dp[i] + dp[i + 2], tmp[i + 2] = dp[i + 1] + dp[i + 3], tmp[i + 3] = dp[i + 2] + dp[i + 4];
rep(i, 1, (N >> 1)) for (int j = 2 * i; j <= N; j += i) tmp[j] += dp[i];
for (int i = 1; i < N; i += 4) dp[i] = tmp[i] % mod, dp[i + 1] = tmp[i + 1] % mod, dp[i + 2] = tmp[i + 2] % mod, dp[i + 3] = tmp[i + 3] % mod;
rep(i, l, r) ans[i] += dp[i];
}
rep(i, l, r) cout << ans[i] % mod << ' ';
return 0;
}
詳細信息
Subtask #1:
score: 6
Accepted
Test #1:
score: 6
Accepted
time: 518ms
memory: 82752kb
input:
1 10 3
output:
4 10 11 13 14 16 15 18 19 16
result:
ok 10 numbers
Test #2:
score: 6
Accepted
time: 1820ms
memory: 82404kb
input:
1 10 10
output:
1446 3555 5399 8364 9365 13867 13268 18455 18559 22035
result:
ok 10 numbers
Test #3:
score: 6
Accepted
time: 182ms
memory: 82920kb
input:
1 10 1
output:
1 2 1 1 1 1 1 1 1 1
result:
ok 10 numbers
Test #4:
score: 6
Accepted
time: 1683ms
memory: 82536kb
input:
4 9 10
output:
8364 9365 13867 13268 18455 18559
result:
ok 6 numbers
Subtask #2:
score: 0
Time Limit Exceeded
Dependency #1:
100%
Accepted
Test #5:
score: 18
Accepted
time: 6646ms
memory: 84672kb
input:
970000 1000000 40
output:
503190413 403501814 423543367 667735332 309717676 941521375 469059575 651585751 638081530 319769570 829344038 710448046 491906657 837995934 191992080 435477208 965318020 224310119 82608430 311469551 397529653 845900371 993051834 218739898 720518121 555742487 850145833 86074414 994934100 233037792 83...
result:
ok 30001 numbers
Test #6:
score: 0
Time Limit Exceeded
input:
961235 991235 40
output:
result:
Subtask #3:
score: 0
Skipped
Dependency #2:
0%
Subtask #4:
score: 0
Runtime Error
Test #11:
score: 0
Runtime Error
input:
3000000000 3000000000 4
output:
result:
Subtask #5:
score: 0
Skipped
Dependency #3:
0%
Subtask #6:
score: 0
Skipped
Dependency #5:
0%
Subtask #7:
score: 0
Skipped
Dependency #1:
100%
Accepted
Dependency #2:
0%