求助,除第一个点全WA(自己测第二组数据没问题)
查看原帖
求助,除第一个点全WA(自己测第二组数据没问题)
590283
lunatics楼主2022/7/28 17:41

不知道是不是输入方式不合适。

代码如下:

#include<stdio.h>
#include<string.h>
#include<math.h>
#pragma warning(disable:4996)

char ch, num[62525];
int i = 0;

void func21(char* s);
void func11(char* s);

int main(void) {
	while ((ch = getchar()) != 'E') {
		if (ch == '\n')
			continue;
		else
			num[i++] = ch;
	}
	if (!i) {
		printf("0:0\n\n0:0");
	}
	else{
		func11(num);
		printf("\n");
		func21(num);
	}
	return 0;
}

void func21(char* s) {
	int t = strlen(s);
	int wincount = 0, losecount = 0;
	for (int i = 0; i < t; i++) {
		if (*(s + i) == 'W')
			wincount++;
		else
			losecount++;
		if (((wincount >= 21 || losecount >= 21) && (abs(wincount - losecount) >= 2)) || i == t - 1) {
			printf("%d:%d \n", wincount, losecount);
			wincount = losecount = 0;
		}
	}
}

void func11(char* s) {
	int t = strlen(s);
	int wincount = 0, losecount = 0;
	for (int i = 0; i < t; i++) {
		if (*(s + i) == 'W')
			wincount++;
		else
			losecount++;
		if (((wincount >= 11 || losecount >= 11) && (abs(wincount - losecount) >= 2)) || i == t - 1) {
			printf("%d:%d\n", wincount, losecount);
			wincount = losecount = 0;
		}
	}
}
2022/7/28 17:41
加载中...