답안 #955237

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
955237 2024-03-29T22:42:20 Z Dennis_Jason JJOOII 2 (JOI20_ho_t2) C++14
0 / 100
0 ms 348 KB
#include <bits/stdc++.h>
#define NMAX 200001
#define pb push_back
#define MOD 1000000007
#define nl '\n'
#define INF 0x3f3f3f3f
#define int long long
using namespace std;
ifstream fin("aib.in");
ofstream fout("aib.out");
int n,k;
string s;

/// op1:delete s[0]
/// op2:delete s[s.size()-1]
/// op3:delete between (0,s.size()-1)
signed main() {

    cin>>n>>k;
    cin>>s;
    int cnt=0;
    int cntJ=0,cntO=0,cntI=0;
    for(int i=0;i<s.size();++i)
    {
       if(s[i]!='J' && cntJ==0)
           continue;
       if(s[i]!='I'&& cntI==k)
           break;

      if(s[i]=='J')
      {
          if(cntJ<k)
          {
              cntJ++;
          }
          else if(cntJ==k && cntO<k)
          {
              cnt++;
          }
          else if(cntJ==k && cntO==k && cntI<k)
          {
              cnt++;
          }
      }
        if(s[i]=='O')
        {
            if(cntJ==k && cntO<k)
            {
                cntO++;
            }
            else if(cntJ<k||cntO==k && cntI<k)
            {
                cnt++;
            }
            else if(cntJ==k && cntO==k && cntI<k)
            {
                cnt++;
            }
        }
        if(s[i]=='I')
        {
            if(cntJ==k && cntO==k)
            {
                cntI++;
            }
            else if(cntJ==k && cntO<k || cntJ<k)
            {
                cnt++;
            }
        }
    }
    //cout<<cntI<<" "<<cntO<<" "<<cntJ<<nl;
    if(cntI!=k ||cntO!=k ||cntJ!=k)
        cout<<-1;
    else
        cout<<cnt;



    return 0;

}

Compilation message

ho_t2.cpp: In function 'int main()':
ho_t2.cpp:23:18: warning: comparison of integer expressions of different signedness: 'long long int' and 'std::__cxx11::basic_string<char>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   23 |     for(int i=0;i<s.size();++i)
      |                 ~^~~~~~~~~
ho_t2.cpp:51:37: warning: suggest parentheses around '&&' within '||' [-Wparentheses]
   51 |             else if(cntJ<k||cntO==k && cntI<k)
      |                             ~~~~~~~~^~~~~~~~~
ho_t2.cpp:66:29: warning: suggest parentheses around '&&' within '||' [-Wparentheses]
   66 |             else if(cntJ==k && cntO<k || cntJ<k)
      |                     ~~~~~~~~^~~~~~~~~
# 결과 실행 시간 메모리 Grader output
1 Incorrect 0 ms 348 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 0 ms 348 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 0 ms 348 KB Output isn't correct
2 Halted 0 ms 0 KB -