能通过样例,但全部WA
查看原帖
能通过样例,但全部WA
792820
jackpudding楼主2023/1/14 19:55

并且下载了第一个数据对照输出了二三十个都没问题,烦请大佬们看看

#include<iostream>
#include<algorithm>
#include <string>
using namespace std;

struct Student {

	string s;//存名字
	int a, b, c;//存语文数学英语的分数
	int total = a + b + c;
}stu[100000];
bool cmp(int i, int j) {
	for (int k = 0; j < min(stu[i].s.size(), stu[j].s.size()); k++) {
		if (stu[i].s[k] != stu[j].s[k]) return stu[i].s[k] < stu[j].s[k];//比较字典序
	}
}
int main() {
	int n;
	int total;
	cin >> n;
	for (int i = 0; i < n; i++) {
		cin >> stu[i].s >> stu[i].a >> stu[i].b >> stu[i].c;//输入三科分数
	}
	for (int i = 0; i < n - 1; i++) {
		for (int j = i + 1; j < n; j++) {
			if (abs(stu[i].a - stu[j].a) <= 5 && abs(stu[i].b - stu[j].b) <= 5 && abs(stu[i].c - stu[j].c) <= 5 && abs(stu[i].total - stu[j].total) <= 10) {
				if (cmp(i, j)) {
					cout << stu[i].s << " " << stu[j].s;
				}
				else {
					cout << stu[j].s << " " << stu[i].s;
				}
				cout << endl;
			}
		}
	}
	return 0;
}


会不会是结尾多输出了一个回车的原因,但我不知道如何修改输出回车的结束条件

2023/1/14 19:55
加载中...