【oj】 趣味比赛 runtime error不造问题出在哪。。求大神指教。。
// 求大神看看我的代码。。实在是发现不了错在哪。。写的比较烂。。见谅见谅趣味比赛
发布时间: 2017年12月12日 16:36 最后更新: 2017年12月12日 16:44 时间限制: 1000ms 内存限制: 128M SPJ
描述
小明参加了学校举办的火眼金睛趣味比赛,比赛的规则是这样的:由若干男生和若干女生组成的队伍站成一排,小明要在最短的时间内在队伍中找到一个人,这个人前面的男生的个数等于从他开始的队伍(包含他自己)中女生的个数。小明现在很头疼,比赛方规定小明可以求助好友,作为他的好朋友,请你帮帮他。 输出要求的人的位置,若不存在输出No Response
输入
第一行是一个整数T代表测试用例组数。
每个测试用例的第一行是一个整数n代表队伍长度;第二行是一个长度为n的字符串,使用M代表男生,F代表女生。题目保证字符串合法(即不含其他字母)。(1<=n<=1e6)(人从0开始编号)
输出
对于每个测试用例输出要求的位置,若位置不存在则输出 “No Response”(不含分号)。若有多个位置满足题意则输出任意一个。
样例输入1
1
2
MF
样例输出1
1
程序代码:
#include <stdio.h>
int main(){
int n,m,x,y;
int i = 0,j,k;
char people[100000];
scanf("%d",&n);
while(i < n){
scanf("%d",&m);
getchar();
scanf("%s",people);
people[m] = '\0';
if(m < 2){
printf("No Response");
if(i != n-1)
printf("\n");
continue;
}
j = 1;
while(j < m){
k = 0;
x = 0;
y = 0;
while(k < m){
if(k < j){
if(people[k] == 'M')
x++;
}else{
if(people[k] == 'F')
y++;
}
k++;
}
if(x == y && x != 0){
printf("%d",j);
break;
}
j++;
}
if(j == m && x != y)
printf("No Response");
if(i != n-1)
printf("\n");
i++;
}
return 0;
}









~