【3026】X的纠结

X的纠结

Time Limit: 1000ms   Memory limit: 65536K  有疑问?点这里^_^

题目描述

新一届的学妹果然是一个比一个漂亮啊,X看看这个也不错,看看那个也不错,所以他的纠结来了,究竟要去追哪一个呢?柏拉图说过:良好的开端等于成功的一半。所以这个选择也是很重要的啊,我们要帮一帮X了。

假设,X的心中有对每一个学妹的心动值a,每个学妹也有对X的好感值b。那么请按心动值由大到小,当心动值相同时,好感值也由大到小排序,找出X的最佳的追求序列吧。

输入

 

1行输入一个nn <= 100 )。

2行到第n+1行,每行两个整数aba < 100 , b < 100)。对于第i+1行两个整数ab代表了X对第i个女生的心动值a,和好感值b(不存在ab同时相同的情况)

输出

 

输出1行,n个整数(每两个整数之间有空格),代表X的最佳追求序列。

示例输入

3
1 2
2 1
2 2

示例输出

3 2 1

提示

 

来源

  winddreams

示例程序


#include <stdio.h>
typedef struct Girl
{
	int id;
	int a;
	int b;
}girl;
int main()
{
	girl g[101], t;
	int n, i, j;
	scanf("%d",&n);
	for(i=0;i<n;i++)
	{
		scanf("%d%d",&g[i].a,&g[i].b);
		g[i].id=i+1;
	}
	for(i=0;i<n;i++)
		for(j=0;j<n;j++)
		{
			if(g[j].b<g[j+1].b)
			{
				t=g[j];
				g[j]=g[j+1];
				g[j+1]=t;
			}
		}
	for(i=0;i<n;i++)
		for(j=0;j<n;j++)
		{
			if(g[j].a<g[j+1].a)
			{
				t=g[j];
				g[j]=g[j+1];
				g[j+1]=t;
			}
		}
	for(i=0;i<n;i++)
	{
		if(i==n-1)
		   printf("%d\n",g[i].id);
		else
			printf("%d ",g[i].id);
	}
    return 0;
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值