洛谷 题解 CF711A 【Bus to Udayland】

先用一个字符数组存每行的座位情况(字符变量也可以)

接下来用另一个数组存最后的座位情况

好了,看代码

#include<iostream>
using namespace std;
bool t=false;//是否存在这种座位
int main()
{
	int n;
	char c[6];
	char cc[1010][6];
	cin>>n;
	for(int i=1;i<=n;i++)
	{
		cin>>c[1]>>c[2]>>c[3]>>c[4]>>c[5];//读入
		for(int j=1;j<=5;j++)cc[i][j]=c[j];//先全部赋值一遍
		if(t==false&&c[1]==c[2]&&c[1]=='O'){t=true,cc[i][1]='+',cc[i][2]='+';}//开始特判,记得一定要加"t==false"这一句!
		if(t==false&&c[4]==c[5]&&c[4]=='O'){t=true,cc[i][4]='+',cc[i][5]='+';}//同上
	}
	if(!t)cout<<"NO
";
	else
	{
		cout<<"YES
";
		for(int i=1;i<=n;i++)
		{
			for(int j=1;j<=5;j++)cout<<cc[i][j];
			cout<<endl;
		}
	}//输出
	return 0;
}
原文地址:https://www.cnblogs.com/hulean/p/10799254.html