求助,字典序排了
查看原帖
求助,字典序排了
871004
Manki23333333楼主2023/2/18 16:58
#include<bits/stdc++.h>
using namespace std;
int n;
struct Node{
	int a[3];
	int sum;
	string name;
	bool operator ==(Node node){
		if (abs (a[1] - node.a[1]) <= 5 && 
			abs (a[2] - node.a[2]) <= 5 && 
			abs (a[3] - node.a[3]) <= 5 && 
			abs (sum - node.sum) <= 10)return true;
		return false;
	}
	bool operator <(Node node){
		return name.compare(node.name)<0;
	}
	void out(){
		cout << name << " ";
	}
}a[10001];
int main () {
	scanf ("%d", &n);
	for (int i = 1; i <= n; i++) {
		cin >> a[i].name;
		cin >> a[i].a[1] >> a[i].a[2] >> a[i].a[3];
		a[i].sum = a[i].a[1] + a[i].a[2] + a[i].a[3];
	}
	for (int i = 1; i <= n; i++)
		for (int j = i + 1; j <= n; j++)
			if(a[i] == a[j]){
				if(a[i] < a[j]){
					a[i].out(), a[j].out();
				}else{
					a[j].out(), a[i].out();
				}
				cout << "\n";
			}
	return 0;
}
2023/2/18 16:58
加载中...