我的红题离谱代码
查看原帖
我的红题离谱代码
970434
heheya楼主2024/4/11 13:08

一开始想太复杂了,就写了这么多

#include<bits/stdc++.h>
using namespace std;
int main(){
	string a;
	int b=0,g=0;
	cin>>a;
	for(int i=0;i<a.size();i++){
		if(a[i]=='.'){
			continue;
		}
		if(a[i]=='b'&&a[i+1]=='o'&&a[i+2]=='y'){
			b++;
			i+=2;
		}
		else if(a[i]=='b'&&a[i+1]=='o'||a[i]=='o'&&a[i+1]=='y'||a[i]=='b'&&a[i+1]=='y'){
			b++;
			i+=1;
		}
		else if(a[i]=='b') b++;
		else if(a[i]=='o') b++;
		else if(a[i]=='y') b++;
	}
	for(int i=0;i<a.size();i++){
		if(a[i]=='.'||a[i]=='b'||a[i]=='o'||a[i]=='y'){
			continue;
		}
		if(a[i]=='g'&&a[i+1]=='i'&&a[i+2]=='r'&&a[i+3]=='l'){
			g++;
			i+=3;
		}
		else if(a[i]=='g'&&a[i+1]=='i'&&a[i+2]=='r'||a[i]=='g'&&a[i+1]=='r'&&a[i+2]=='l'||a[i]=='g'&&a[i+1]=='i'&&a[i+2]=='l'||a[i]=='i'&&a[i+1]=='r'&&a[i+2]=='l'){
			g++;
			i+=2;
		}
		else if(a[i]=='g'&&a[i+1]=='i'||a[i]=='i'&&a[i+1]=='r'||a[i]=='r'&&a[i+1]=='l'||a[i]=='g'&&a[i+1]=='l'||a[i]=='g'&&a[i+1]=='r'||a[i]=='i'&&a[i+1]=='l'){
			g++;
			i+=1;
		}
		else if(a[i]=='g') g++;
		else if(a[i]=='i') g++;
		else if(a[i]=='r') g++;
		else if(a[i]=='l') g++;
	}
	cout<<b<<endl<<g;
}
2024/4/11 13:08
加载中...