# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
1023797 | Aurora | JJOOII 2 (JOI20_ho_t2) | C++14 | 1 ms | 348 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include <bits/stdc++.h>
using namespace std;// Hello world arsaoshe aneru nesi isods
const int mod = 1e9+7; const char nl = '\n'; typedef long long ll; const int N = 1e5 + 5 ;
#define ff first
#define ss second
void void_code () {
ll n; cin >> n;ll k; cin >> k;
string s; cin >> s;
ll l = - 1, r = n ;
for ( int i =0 ;i < n; i ++ ) {
if ( s [ i ] == 'J' ) {
l = i ;
break;
}
}
for ( int i = n - 1; i >= 0 ; i -- ) {
if ( s [ i ] == 'I' ) {
r = i ;
break;
}
}
ll cnt = 0 ;
ll oh = 1;
ll gov = 0 ;
vector < char > v ;
for ( int i = l ;i < r + 1 ; i ++ ) {
if ( oh == 1 ) {
if ( s [ i ] == 'J' ){
cnt ++ ;
v .push_back ( 'J' ) ;
}
if ( cnt == k ) {
oh = 2;
cnt = 0 ;
}
else if ( s [ i ] != 'J' ) {
gov ++ ;
}
}
else if ( oh == 2 ) {
if ( s [ i ] == 'O' ){
cnt ++ ;
v .push_back ( 'O' ) ;
}
if ( cnt == k ) {
oh = 3;
cnt = 0 ;
}
else if ( s [ i ] != 'O' ){
gov ++ ;
}
}
else if ( oh == 3 ) {
if ( s [ i ] == 'I' ){
cnt ++ ;
v .push_back ( 'I' ) ;
}
if ( cnt == k ) {
oh = 3;
cnt = 0 ;
break;
}
else if ( s [ i ] != 'I' ){
gov ++ ;
}
}
}
ll ch = r - l + 1;
if ( ! v . empty () && k * 1ll * 3 == v . size () )
cout << gov ;
//~ cout << ch - v . size ();
else cout << -1 ;
cout << nl << "gov = " << gov ;
cout << nl;
cout << "----------------" << nl;
cout << gov ;
cout << nl << l << " " << r << nl;
cout << nl;
for ( int i = 0 ;i < v . size (); i++ ) {
cout << v [ i ] << " ";
}
cout << nl;
for ( int i = l; i <= r ; i ++ ) {
cout << s [ i ] << " ";
}
}
signed main() {
ios_base::sync_with_stdio(false);cin.tie(nullptr);cout.tie(nullptr);
int t = 1; //test
//~ cin >> t;
while (t--) void_code ();
return 0;
}
//~ IIIOOOJIOOJOOIJJIJ
//~ JIOOJOOIJJI
//~ JOI
//~ IIIOOOJIOOJOOIJJIJ
Compilation message (stderr)
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |