제출 #863054

#제출 시각UTC-0아이디문제언어결과실행 시간메모리
8630542023-10-19 14:14:16KN200711서열 (APIO23_sequence)C++17
48 / 100
769 ms101016 KiB
#include "sequence.h"
# include <bits/stdc++.h>
# define fi first
# define se second
using namespace std;
const int MXN = 5e5;
vector<int> ct[MXN + 1];
int pref[4 * MXN + 10], pref1[4 * MXN + 10], suff[4 * MXN + 10], suff1[4 * MXN + 10], sm1[4 *MXN + 10], sm2[4 *MXN + 10], arr[MXN + 1];
void merge(int c, int a, int b) {
pref[c] = max(pref[a], sm1[a] + pref[b]);
pref1[c] = min(pref1[a], sm2[a] + pref1[b]);
suff[c] = max(suff[b], sm1[b] + suff[a]);
suff1[c] = min(suff1[a], sm2[b] + suff1[a]);
sm1[c] = sm1[a] + sm1[b];
sm2[c] = sm2[a] + sm2[b];
}
void build(int lf, int rg, int nd) {
if(lf == rg) {
if(arr[lf] == 0) {
pref[nd] = suff[nd] = 1;
pref1[nd] = suff1[nd] = -1;
sm1[nd] = 1;
sm2[nd] = -1;
}
else {
sm1[nd] = sm2[nd] = pref[nd] = suff[nd] = 1;
pref1[nd] = suff1[nd] = 0;
 
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

컴파일 시 표준 에러 (stderr) 메시지

sequence.cpp: In function 'int sequence(int, std::vector<int>)':
sequence.cpp:154:16: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
  154 |   for(int k=0;k<ct[i].size();k++) {
      |               ~^~~~~~~~~~~~~
sequence.cpp:157:12: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
  157 |    while(r < ct[i].size() && cek(ct[i][k], ct[i][r])) {
      |          ~~^~~~~~~~~~~~~~
sequence.cpp:165:16: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
  165 |   for(int d=0;d<ct[i].size();d++) {
      |               ~^~~~~~~~~~~~~
sequence.cpp:170:16: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
  170 |   for(int d=0;d<ct[i+1].size();d++) {
      |               ~^~~~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...