제출 #831620

#제출 시각아이디문제언어결과실행 시간메모리
831620nninJJOOII 2 (JOI20_ho_t2)C++14
100 / 100
9 ms2188 KiB
#include<bits/stdc++.h> using namespace std; int n, k; string s; int main() { ios_base::sync_with_stdio(false); cin.tie(NULL); cin>>n>>k>>s; vector<int> J, O, I; for(int i=0;i<n;i++) { if(s[i]=='J') { J.push_back(i); } else if(s[i]=='O') { O.push_back(i); } else { I.push_back(i); } } int ans = INT_MAX; for(int j=0;j+k-1<J.size();j++) { int o = upper_bound(O.begin(), O.end(), J[j+k-1])-O.begin(); if(o+k-1>=O.size()) continue; int i = upper_bound(I.begin(), I.end(), O[o+k-1])-I.begin(); if(i+k-1>=I.size()) continue; ans = min(ans, I[i+k-1]-J[j]+1-(3*k)); } if(ans==INT_MAX) cout<<-1; else cout<<ans; }

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

ho_t2.cpp: In function 'int main()':
ho_t2.cpp:22:22: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   22 |     for(int j=0;j+k-1<J.size();j++) {
      |                 ~~~~~^~~~~~~~~
ho_t2.cpp:24:17: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   24 |         if(o+k-1>=O.size()) continue;
      |            ~~~~~^~~~~~~~~~
ho_t2.cpp:26:17: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   26 |         if(i+k-1>=I.size()) continue;
      |            ~~~~~^~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...