您的位置:首页 > 编程语言 > Go语言

蓝桥杯 寻找数组中最大值(sort排序+结构体)

2016-01-05 15:06 429 查看
 算法训练 寻找数组中最大值  

时间限制:1.0s   内存限制:512.0MB
    

问题描述

  对于给定整数数组a[],寻找其中最大值,并返回下标。

输入格式

  整数数组a[],数组元素个数小于1等于100。输出数据分作两行:第一行只有一个数,表示数组元素个数;第二行为数组的各个元素。

输出格式

  输出最大值,及其下标

样例输入
3
3 2 1


样例输出

3 0


用一个结构体存值与下标,sort大法非常好用。
#include<stdio.h>
#include<algorithm>
using namespace std;
struct Node
{
int x,pos;
};
bool cmp(Node n,Node m)
{
return n.x>m.x;
}
int main()
{
int n;
Node a[105];
while(~scanf("%d",&n))
{
for(int i=0; i<n; i++)
{
scanf("%d",&a[i].x);
a[i].pos=i;
}
sort(a,a+n,cmp);
printf("%d %d\n",a[0].x,a[0].pos);
}
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息