Submission #839702

#TimeUTC-0UsernameProblemLanguageResultExecution timeMemory
8397022023-08-30 15:25:01sleepntsheepJJOOII 2 (JOI20_ho_t2)C++17
100 / 100
13 ms10068 KiB
#include <cstdio>
#include <cstring>
#include <algorithm>
#define N 200005
int n, k, f[N][4], far_pos[N][4], near_pos[N][4];
char s[N];
int cnt(int l, int r, int c) { return f[r][c] - f[l-1][c]; }
int suf(int l, int c) { return f[n][c] - f[l-1][c]; }
#define chmax(a, b) a = std::max(a, b)
#define chmin(a, b) a = std::min(a, b)
int ok(int m)
{
/* get O's from l to r */
/*
* --JJJJOOOOOOOOOOOOOIIII-
* l r
*/
int cost[4] = {0};
for (int r = 1; r <= n; ++r)
{
/* c[r][1] - c[l-1][1] == k
* c[l-1][1] == c[r][1] - m */
if (f[r][2] < k) continue;
int l = far_pos[f[r][2] - k][2] + 1;
cost[2] = r-l+1-k;
 
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Compilation message (stderr)

ho_t2.cpp: In function 'int main()':
ho_t2.cpp:56:96: warning: array subscript has type 'char' [-Wchar-subscripts]
   56 |     for (int i = 1; i <= n; ++i) { for (int j = 1; j <= 3; ++j) f[i][j] = f[i-1][j]; ++f[i][s[i]]; }
      |                                                                                             ~~~^
ho_t2.cpp:54:10: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   54 |     scanf("%d%d%s", &n, &k, s + 1);
      |     ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...