codeforces 266B-C语言解题报告

Posted DQ_CODING

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了codeforces 266B-C语言解题报告相关的知识,希望对你有一定的参考价值。

266B题目网址

题目解析

输入n,t,排队情况s,输出第t次循环后,排队情况
举例:

输入:
5 1
BGGBG

输出:
GBGGB

在这里插入图片描述
2.输入的n代表排队的人数,t代表整个循环t次之后再输出结果

3.注意点:
使用while()大循环去控制t次的循环,使用for()内层循环去遍历整个字符串
如果if(s[j]‘B’&&s[j+1]‘G’),则交换s[j]与s[j+1],并且j+2(跳过这两个已经交换过的循环)
如果不是,则下一个j+1去判断

代码

#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<math.h>
int main()
{
	int n=0,t=2;
	char s[50]={'\\0'};
	char c='0';
	scanf("%d %d",&n,&t);
	scanf("%s",s);
	while(t--){
		for(int j=0;j<strlen(s);)
		{
			if(s[j]=='B'&&s[j+1]=='G')
			{
				c=s[j];
				s[j]=s[j+1];
				s[j+1]=c;
				j+=2;
			}else{
				j+=1;
			}
		}
	}
		

	
	printf("%s",s);
	system("pause");
	return 0;
}

以上是关于codeforces 266B-C语言解题报告的主要内容,如果未能解决你的问题,请参考以下文章

codeforces 266A-C语言解题报告

解题报告力扣 第 266 场周赛

codeforces 122A-C语言解题报告

codeforces 281A-C语言解题报告

codeforces 133A-C语言解题报告

codeforces 1030A-C语言解题报告