题目1200:最大的两个数

点击打开链接

/*
	时间:2014.1.31
	目的:题目1200:最大的两个数 http://ac.jobdu.com/problem.php?pid=1200
*/
#include <stdio.h>
void fun(int *a,int b)//核心代码 
{
	int f1=0;
	if(a[0] > a[1])
		f1 = 1;//判断f1==1表示a[0]>a[1] 
	else if(a[0] < a[1])
		f1 = 2;//判断f1==2表示a[0]<a[1] 
	switch(f1)//判断f1==0表示a[0]==a[1] 
	{
		case 0:(b>a[0])&&(a[1]=b);//当相等时,只需判断是否大于a[0],若大于只需改变a[1]即可 
				break;
        case 1:(b>a[1])&&(a[1]=b);//若a[0]>a[1]时, 无论是b否大于a[0],只需把a[1]改变即可 
                break;
        case 2:(b>a[0])&&(a[0]=a[1])&&(a[1]=b);//同case 1 
                break;
	}
}
int main()
{
	int n, i, a, b, c, d, e, t0[2], t1[2], t2[2], t3[2], t4[2];
	for(scanf("%d", &n);n--;)
	{
		t0[0]=t0[1]=t1[0] =t1[1]=t2[0] =t2[1]=t3[0] =t3[1]=t4[0]=t4[1]=-2000000000;
		for(i = 0;i < 2;i++)
			scanf("%d %d %d %d %d",&t0[i],&t1[i],&t2[i],&t3[i],&t4[i]);
		for(i = 0;i < 2;i++)
		{
			scanf("%d %d %d %d %d",&a,&b,&c,&d,&e);
			fun(t0,a);
			fun(t1,b);
			fun(t2,c);
			fun(t3,d);
			fun(t4,e);
		}
		for(i = 0;i < 2;i++)
			printf("%d %d %d %d %d \n",t0[i],t1[i],t2[i],t3[i],t4[i]);
	}
	return 0;
} 
/*
------------------
1					思路:1.主要是在换tx[i](x=0,1,2,3,4;i=0,1)时,需要考虑保留原矩阵的行列顺序即可 
1  2   4  9  8
-1  4  9  8  8
12  9  8  7  0
7   8  9  7  0
12 9 9 9 8
7 8 9 8 8
------------------
*/ 
#include <stdio.h>
void fun(int *a,int b)
{
    if(a[0] > a[1])
      (b>a[1])&&(a[1]=b); 
    else if(a[0] < a[1])
		(b>a[0])&&(a[0]=a[1])&&(a[1]=b);
	else (b>a[0])&&(a[1]=b);
}
int main()
{
    int n, i, a, b, c, d, e, t0[2], t1[2], t2[2], t3[2], t4[2];
    for(scanf("%d", &n);n--;)
    {
        t0[0]=t0[1]=t1[0] =t1[1]=t2[0] =t2[1]=t3[0] =t3[1]=t4[0]=t4[1]=-2000000000;
        for(i = 0;i < 2;i++)
        scanf("%d %d %d %d %d",&t0[i],&t1[i],&t2[i],&t3[i],&t4[i]);
        for(i = 0;i < 2;i++)
        {
            scanf("%d %d %d %d %d",&a,&b,&c,&d,&e);
            fun(t0,a);
            fun(t1,b);
            fun(t2,c);
            fun(t3,d);
            fun(t4,e);
        }
        for(i = 0;i < 2;i++)
        printf("%d %d %d %d %d \n",t0[i],t1[i],t2[i],t3[i],t4[i]);
    }
    return 0;
} 




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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值