ELI x NOZOMI

ELI x NOZOMI

题目描述:

在她们共同的家中,NOZOMI正在给ELI占卜。

NOZOMI用塔罗牌占卜的姿势水平非常高,比如她预测2017年NBA总决赛骑士4-0横扫勇士,2018年世界杯卡西领衔的西班牙队夺冠,以及这场比赛王浩骥dalao肯定AK,而这些在未来也都得到了证实。但是这是在给ELI占卜,所以NOZOMI难免有些紧张,占卜的准确率也就随之下降了。

NOZOMI一共给ELI占卜了n次,其中每次占卜都需要用到m张塔罗牌,每张塔罗牌上有一个数字代表这次占卜的准确率。比较某两次占卜准确率大小的方法是:从第一张开始,数字大的准确率高,若相同则比较第二张的大小,以此类推。

现在NOZOMI想知道每次占卜的准确率,所以她找到了你,请你来帮她按准确率从大到小输出占卜的编号,若准确率相同则编号靠前的先输出。

输入格式:

第一行两个正整数n,m。

接下来n行,每行m个正整数,第i行的m个数表示第i-1次占卜中每张塔罗牌上的数字。

输出格式:

一行n个数,第i个数表示准确率第i大的数。

样例输入:

3 2
8 9
8 10
7 13

样例输出:

2 1 3

提示:

对于20%的数据,m=1;

对于60%的数据,m<=2;

对于100%的数据,n<=50000; m<=10;

时间限制: 1000ms
空间限制: 256MB

#include<bits/stdc++.h>
using namespace std;
struct data{
	int x1,x2,x3,x4,x5,x6,x7,x8,x9,x10;
	int id;
};

data list1[50005];

bool cmp(data x,data y){
	if(x.x1 == y.x1){
		if(x.x2 == y.x2){
	  		if(x.x3 == y.x3){
	   			if(x.x4 == y.x4){
	   				if(x.x5 == y.x5){
						if(x.x6 == y.x6){
							if(x.x7 == y.x7){
								if(x.x8 == y.x8){
									if(x.x9 == y.x9)
		 								return x.x10 > y.x10;
									else
		 								return x.x9 > y.x9;
								}else
		 							return x.x8 > y.x8;
							}else
		 						return x.x7 > y.x7;
						}else
		 					return x.x6 > y.x6;
					}else
		 				return x.x5 > y.x5;
				}else
					return x.x4 > y.x4;
			}else
				return x.x3 > y.x3;
		}else
			return x.x2 > y.x2;
	}else
		return x.x1 > y.x1;
	
	
	
}

int main() {

	int n,m;
	cin >> n >> m;
	
	for(int i=0; i<n; i++){
		
		if(m > 0)
			cin >> list1[i].x1;
		if(m > 1)
			cin >> list1[i].x2;
		if(m > 2)
			cin >> list1[i].x3;
		if(m > 3)
			cin >> list1[i].x4;
		if(m > 4)
			cin >> list1[i].x5;
		if(m > 5)
			cin >> list1[i].x6;
		if(m > 6)
			cin >> list1[i].x7;
		if(m > 7)
			cin >> list1[i].x8;
		if(m > 8)
			cin >> list1[i].x9;
		if(m > 9)
			cin >> list1[i].x10;
			
			
		list1[i].id = i;
	}
	
	sort(list1,list1+n,cmp);
	
	for(int i=0; i<n; i++)
		cout << list1[i].id + 1 << " ";
		
	

	return 0;
}

AC代码

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值