#include <bits/stdc++.h>
using namespace std;
signed main(){
ios_base::sync_with_stdio(false);
cin.tie(NULL);
cout.tie(NULL);
int a = 0;
int b = 0;
int n;
cin >> n;
int c1 = 1;
vector <pair <int, int> > mass(n + 1);
mass[0] = {0, 0};
int c2 = 0;
int count1 = 0, count2 = 0;
for(int i = 0; i < n; i++)
{
int t;
cin >> t;
if(t == 1)
{
count1++;
count2 = 0;
}
else
{
count1 = 0;
count2++;
}
if(t == 1)
{
a++;
}
else
{
b++;
}
if(a == b)
{
c1++;
}
if(count1 != 0 && mass[i + 1 - count1].first < mass[i + 1 - count1].second &&a > b)
{
c2 = max(c2, count1);
}
if(count2 != 0 && mass[i + 1 - count2].first > mass[i + 1 - count2].second && a < b)
{
c2 = max(c2, count2);
}
mass[i + 1] = {a, b};
}
cout << a << " " << b << "\n";
cout << c1 << "\n";
cout << c2 << "\n";
return 0;
}
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
0 ms |
384 KB |
Output is correct |
2 |
Correct |
0 ms |
384 KB |
Output is correct |
3 |
Correct |
0 ms |
384 KB |
Output is correct |
4 |
Correct |
0 ms |
384 KB |
Output is correct |
5 |
Correct |
0 ms |
384 KB |
Output is correct |
6 |
Correct |
0 ms |
384 KB |
Output is correct |
7 |
Correct |
0 ms |
384 KB |
Output is correct |
8 |
Correct |
0 ms |
384 KB |
Output is correct |
9 |
Correct |
1 ms |
384 KB |
Output is correct |
10 |
Correct |
0 ms |
384 KB |
Output is correct |