#include<bits/stdc++.h>
#define int long long
using namespace std;
string s;
int top,a[100005],top1,b[100005],ans;
signed main(){
	cin>>s;
	int len=s.size();
	for(int i = 0;i<len;i++){
		if(s[i]=='I')a[++top]=i;
		else b[++top1]=i;
	}
	if(top==0){
		cout<<2;
		return 0;
	}
	if(top1==0){
		cout<<1;
		return 0;
	}
	for(int i = 1;i<=top1;i++){
		if(b[i]-1!=b[i-1]&&i!=1)ans++;
	}
	cout<<ans;
	return 0;
}

1 条评论

  • @ 2026-7-31 19:58:37
    #include <bits/stdc++.h>
    using namespace std;
    #define int long long
    string s;
    int si[5010],so[5010],ans=LLONG_MAX;
    signed main(){
        cin>>s;
        for(int i=1;i<=s.size();i++){
        	if(s[i-1]=='I')si[i]=si[i-1]+1;
        	else si[i]=si[i-1];
        	if(s[i-1]=='O')so[i]=so[i-1]+1;
        	else so[i]=so[i-1];
    	}
    	int len=s.size();
    	for(int i=1;i<=len-2;i++){
    		for(int j=i+1;j<=len-1;j++){
    			int s1=so[i],s2=si[j]-si[i],s3=so[len]-so[j];
    			int wbl=s1+s2+s3;
    			ans=min(ans,wbl);
    		}
    	}
    	cout<<ans;
        return 0;
    }
    
    
    • 1

    信息

    ID
    4580
    时间
    ms
    内存
    MiB
    难度
    7
    标签
    递交数
    33
    已通过
    15
    上传者