0
已解决
邵逸儒
中级天翼
中级天翼
2214 最大值及下标
题目描述 Description
输入n个整数,存放在数组a[1]至a[n]中,输出最大数及所在的位置(n<=10000),中间用单个空格隔开。(假设数组里面各个元素没有相同的,元素范围为0-10000)
输入描述 Input Description
两行:
第一行,数组中元素个数n
第二行,数组中各个元素,元素之间用空格隔开
输出描述 Output Description
元素中最大值和最大值的位置,两个数字之间用空格隔开
样例输入 Sample Input
5
67 43 90 78 32
样例输出 Sample Output
90 3
0
已采纳
马佳滢
新手天翼
新手天翼
邵逸儒 你好! 定义 a[10040],b,max=0,maxx=0; 输入b; for(定义i,从1循环到b){ 输入a[i]; 判断:a[i]是不是大于max{ max=a[i]; maxx=i; } }输出max“空格”maxx; 返回值0;
max=0,这个好理解。
你比如说,题目描述 Description来讲,元素范围为0-10000,max=0,那么所有数要么大于max,要么等于它。等于就不说了,除非所以值相等,不然不可能是最大值。
循环输入,接着比大小。
那有人问了,为什么是a[i]是不是大于max而不是a[i]是不是大于等于max呢?
其实啦,那样也行啦……不过,如果题目改一改,如果有多个最大值,取第一个,就要这样写了啦。
0