90分求调(第五个点不对)
查看原帖
90分求调(第五个点不对)
966272
zhs_TLE楼主2024/8/11 12:52
#include<iostream>
#include<string.h>
using namespace std;
int n;
string teacher[4],student[6];
bool teacher_flag,student_flag[6];
bool ans[6];
string name;
string information;
void flag_begin(string a){
	for(int i=1;i<=5;i++)
	  if(student[i]==a) student_flag[i]=1;
}
void flag_stop(string a){
	for(int i=1;i<=5;i++)
	  if(student[i]==a) student_flag[i]=0;
}
bool teacher_information(string a){
	for(int i=1;i<=3;i++)
	   if(teacher[i]==a) return 1;
	return 0;
}
int main(){
	cin>>n;
	for(int i=1;i<=3;i++) cin>>teacher[i];
	for(int i=1;i<=5;i++) cin>>student[i];
	for(int i=1;i<=n;i++){
		cin>>name;
		getline(cin,information);
		if(information==" came!"&&teacher_information(name)) teacher_flag=1;
		if(information==" left!"&&teacher_information(name)) teacher_flag=0;
	    if(information==" started playing games!") flag_begin(name); 
	    if(information==" stopped playing games!") flag_stop(name); 
	    if(teacher_flag==1){
	    	for(int i=1;i<=5;i++)
	    	    if(student_flag[i]==1) ans[i]=1;
		}
	    
	}
	int cnt=0;
	for(int i=1;i<=5;i++){
		if(ans[i]==1){
			cout<<student[i]<<' ';
			cnt++;
		}
	}
	if(cnt==0) cout<<"How Good Oiers Are!";
	if(cnt==5) cout<<'\n'<<"How Bad Oiers Are!";
	return 0;
}
2024/8/11 12:52
加载中...