Submission #37396196
Source Code Expand
#include<bits/stdc++.h>
#define LL long long
#define MOD 998244353
using namespace std;
int inc(const int &a, const int &b)
{
return a + b >= MOD ? a + b - MOD : a + b;
}
int dec(const int &a, const int &b)
{
return a - b < 0 ? a - b + MOD : a - b;
}
void Inc(int &a, const int &b)
{
((a += b) >= MOD) && (a -= MOD);
}
const int N = 2e5 + 5;
int n, a[N], f[N], sum[N];
int cnt[N], num;
int main()
{
scanf("%d", &n);
for(int i = 1; i <= n; ++i)
scanf("%d", &a[i]);
f[0] = 1;
int l = 1, r = 1;
for(int i = 1; i <= n; ++i)
{
f[i] = f[i - 1];
if(a[i] == a[i - 1])
l = i;
if(i > 2 && a[i] != a[i - 1] && a[i - 1] != a[i - 2])
Inc(f[i], f[i - 2]);
if(cnt[a[i]] == 0) num++;
cnt[a[i]]++;
while(r < i - 2 && num >= 3)
{
cnt[a[r]]--;
if(!cnt[a[r]])
--num;
++r;
}
if(l <= r) Inc(f[i], dec(sum[r - 1], sum[l - 1]));
sum[i] = inc(sum[i - 1], f[i]);
}
printf("%d\n", f[n]);
return 0;
}
Submission Info
| Submission Time | |
|---|---|
| Task | D - Neq Neq |
| User | Schucking_Sattin |
| Language | C++ (GCC 9.2.1) |
| Score | 700 |
| Code Size | 1131 Byte |
| Status | AC |
| Exec Time | 33 ms |
| Memory | 6864 KiB |
Compile Error
./Main.cpp: In function ‘int main()’:
./Main.cpp:22:10: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
22 | scanf("%d", &n);
| ~~~~~^~~~~~~~~~
./Main.cpp:24:14: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
24 | scanf("%d", &a[i]);
| ~~~~~^~~~~~~~~~~~~
Judge Result
| Set Name | Sample | All | ||||
|---|---|---|---|---|---|---|
| Score / Max Score | 0 / 0 | 700 / 700 | ||||
| Status |
|
|
| Set Name | Test Cases |
|---|---|
| Sample | 00-sample-001.txt, 00-sample-002.txt, 00-sample-003.txt, 00-sample-004.txt |
| All | 00-sample-001.txt, 00-sample-002.txt, 00-sample-003.txt, 00-sample-004.txt, 01-001.txt, 01-002.txt, 01-003.txt, 01-004.txt, 01-005.txt, 01-006.txt, 01-007.txt, 01-008.txt, 01-009.txt, 01-010.txt, 01-011.txt, 01-012.txt, 01-013.txt, 01-014.txt, 01-015.txt, 01-016.txt, 01-017.txt, 01-018.txt, 01-019.txt, 01-020.txt, 01-021.txt, 01-022.txt, 01-023.txt, 01-024.txt, 01-025.txt, 01-026.txt, 01-027.txt, 01-028.txt, 01-029.txt, 01-030.txt, 01-031.txt, 01-032.txt, 01-033.txt, 01-034.txt, 01-035.txt, 01-036.txt, 01-037.txt, 01-038.txt, 01-039.txt, 01-040.txt, 01-041.txt, 01-042.txt, 01-043.txt, 01-044.txt, 01-045.txt, 01-046.txt, 01-047.txt |
| Case Name | Status | Exec Time | Memory |
|---|---|---|---|
| 00-sample-001.txt | AC | 6 ms | 3656 KiB |
| 00-sample-002.txt | AC | 3 ms | 3664 KiB |
| 00-sample-003.txt | AC | 2 ms | 3664 KiB |
| 00-sample-004.txt | AC | 5 ms | 3556 KiB |
| 01-001.txt | AC | 2 ms | 3660 KiB |
| 01-002.txt | AC | 23 ms | 5548 KiB |
| 01-003.txt | AC | 26 ms | 5680 KiB |
| 01-004.txt | AC | 29 ms | 5840 KiB |
| 01-005.txt | AC | 12 ms | 4488 KiB |
| 01-006.txt | AC | 21 ms | 5552 KiB |
| 01-007.txt | AC | 26 ms | 6072 KiB |
| 01-008.txt | AC | 10 ms | 4064 KiB |
| 01-009.txt | AC | 10 ms | 4180 KiB |
| 01-010.txt | AC | 16 ms | 4688 KiB |
| 01-011.txt | AC | 16 ms | 4696 KiB |
| 01-012.txt | AC | 14 ms | 4688 KiB |
| 01-013.txt | AC | 29 ms | 5916 KiB |
| 01-014.txt | AC | 12 ms | 4384 KiB |
| 01-015.txt | AC | 19 ms | 5432 KiB |
| 01-016.txt | AC | 11 ms | 4252 KiB |
| 01-017.txt | AC | 20 ms | 4784 KiB |
| 01-018.txt | AC | 15 ms | 4680 KiB |
| 01-019.txt | AC | 18 ms | 5220 KiB |
| 01-020.txt | AC | 19 ms | 5596 KiB |
| 01-021.txt | AC | 16 ms | 5280 KiB |
| 01-022.txt | AC | 14 ms | 4868 KiB |
| 01-023.txt | AC | 12 ms | 4184 KiB |
| 01-024.txt | AC | 19 ms | 4936 KiB |
| 01-025.txt | AC | 28 ms | 5936 KiB |
| 01-026.txt | AC | 30 ms | 5900 KiB |
| 01-027.txt | AC | 31 ms | 6008 KiB |
| 01-028.txt | AC | 30 ms | 6068 KiB |
| 01-029.txt | AC | 31 ms | 6332 KiB |
| 01-030.txt | AC | 30 ms | 6744 KiB |
| 01-031.txt | AC | 29 ms | 6864 KiB |
| 01-032.txt | AC | 24 ms | 5924 KiB |
| 01-033.txt | AC | 28 ms | 5900 KiB |
| 01-034.txt | AC | 30 ms | 6332 KiB |
| 01-035.txt | AC | 30 ms | 6804 KiB |
| 01-036.txt | AC | 33 ms | 5912 KiB |
| 01-037.txt | AC | 28 ms | 6004 KiB |
| 01-038.txt | AC | 29 ms | 6004 KiB |
| 01-039.txt | AC | 29 ms | 6092 KiB |
| 01-040.txt | AC | 30 ms | 6044 KiB |
| 01-041.txt | AC | 30 ms | 5936 KiB |
| 01-042.txt | AC | 30 ms | 6072 KiB |
| 01-043.txt | AC | 33 ms | 6320 KiB |
| 01-044.txt | AC | 32 ms | 6596 KiB |
| 01-045.txt | AC | 30 ms | 6808 KiB |
| 01-046.txt | AC | 27 ms | 6008 KiB |
| 01-047.txt | AC | 24 ms | 6092 KiB |