提出 #29888817
ソースコード 拡げる
#include<cstdio>
#include<cmath>
#include<algorithm>
using namespace std;
bool s[100001];
int a[100001], ans[1000001];
struct Note
{
int l, r, block_l, id;
}b[1000001];
int main()
{
int n;
scanf("%d", &n);
for (int i = 1; i <= n; ++i)scanf("%d", &a[i]);
int block_siz = sqrt(n), q;
scanf("%d", &q);
for (int i = 1; i <= q; ++i)
{
scanf("%d%d", &b[i].l, &b[i].r);
b[i].block_l = (b[i].l - 1) / block_siz + 1;
b[i].id = i;
}
sort(b + 1, b + (q + 1), [](const Note& a, const Note& b) {
if (a.block_l != b.block_l)
{
return a.block_l < b.block_l;
}
if (a.block_l % 2)
{
return a.r < b.r;
}
return a.r > b.r;
});
int x = 0;
for (int i = b[1].l; i <= b[1].r; ++i)
{
x += s[a[i]];
s[a[i]] ^= 1;
}
ans[b[1].id] = x;
for (int i = 2, l = b[1].l, r = b[1].r; i <= q; ++i)
{
for (; l > b[i].l; x += s[a[--l]], s[a[l]] ^= 1);
for (; r < b[i].r; x += s[a[++r]], s[a[r]] ^= 1);
for (; l < b[i].l; x -= !s[a[l]], s[a[l++]] ^= 1);
for (; r > b[i].r; x -= !s[a[r]], s[a[r--]] ^= 1);
ans[b[i].id] = x;
}
for (int i = 1; i <= q; ++i)
{
printf("%d\n", ans[i]);
}
return 0;
}
提出情報
コンパイルエラー
./Main.cpp: In function ‘int main()’:
./Main.cpp:14:7: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
14 | scanf("%d", &n);
| ~~~~~^~~~~~~~~~
./Main.cpp:15:35: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
15 | for (int i = 1; i <= n; ++i)scanf("%d", &a[i]);
| ~~~~~^~~~~~~~~~~~~
./Main.cpp:17:7: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
17 | scanf("%d", &q);
| ~~~~~^~~~~~~~~~
./Main.cpp:20:8: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
20 | scanf("%d%d", &b[i].l, &b[i].r);
| ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
ジャッジ結果
| セット名 |
Sample |
All |
| 得点 / 配点 |
0 / 0 |
600 / 600 |
| 結果 |
|
|
| セット名 |
テストケース |
| Sample |
sample_01.txt |
| All |
pair_01.txt, pair_02.txt, pair_03.txt, pair_04.txt, sample_01.txt, test_01.txt, test_02.txt, test_03.txt, test_04.txt, test_05.txt, test_06.txt, test_07.txt, test_08.txt, test_09.txt, test_10.txt, test_11.txt, test_12.txt, test_13.txt, test_14.txt, test_15.txt, test_16.txt, test_17.txt, test_18.txt, test_19.txt, test_20.txt, test_21.txt, test_22.txt, test_23.txt, test_24.txt, test_25.txt |
| ケース名 |
結果 |
実行時間 |
メモリ |
| pair_01.txt |
AC |
447 ms |
25552 KiB |
| pair_02.txt |
AC |
447 ms |
25560 KiB |
| pair_03.txt |
AC |
440 ms |
25516 KiB |
| pair_04.txt |
AC |
440 ms |
25476 KiB |
| sample_01.txt |
AC |
5 ms |
2112 KiB |
| test_01.txt |
AC |
1 ms |
2048 KiB |
| test_02.txt |
AC |
231 ms |
14540 KiB |
| test_03.txt |
AC |
316 ms |
18728 KiB |
| test_04.txt |
AC |
64 ms |
4508 KiB |
| test_05.txt |
AC |
258 ms |
15012 KiB |
| test_06.txt |
AC |
93 ms |
6092 KiB |
| test_07.txt |
AC |
33 ms |
3004 KiB |
| test_08.txt |
AC |
100 ms |
8180 KiB |
| test_09.txt |
AC |
31 ms |
2784 KiB |
| test_10.txt |
AC |
384 ms |
23884 KiB |
| test_11.txt |
AC |
544 ms |
25936 KiB |
| test_12.txt |
AC |
437 ms |
26092 KiB |
| test_13.txt |
AC |
438 ms |
26044 KiB |
| test_14.txt |
AC |
440 ms |
25820 KiB |
| test_15.txt |
AC |
444 ms |
25464 KiB |
| test_16.txt |
AC |
467 ms |
25944 KiB |
| test_17.txt |
AC |
452 ms |
26040 KiB |
| test_18.txt |
AC |
442 ms |
25984 KiB |
| test_19.txt |
AC |
455 ms |
25988 KiB |
| test_20.txt |
AC |
447 ms |
25352 KiB |
| test_21.txt |
AC |
553 ms |
25992 KiB |
| test_22.txt |
AC |
450 ms |
26076 KiB |
| test_23.txt |
AC |
442 ms |
25980 KiB |
| test_24.txt |
AC |
441 ms |
26044 KiB |
| test_25.txt |
AC |
418 ms |
22312 KiB |