• HPU 1437: 王小二的求值问题


    1437: 王小二的求值问题

    时间限制: 1 Sec 内存限制: 128 MB

    提交: 141 解决: 31 统计

    题目描述

        题意超级简单,求一个序列的次大值。

    输入

        多组输入,每个测试实例占两行,包括一个整数n (1<n<1000000),接下来一行是n个int范围内的整数,求次大值;

    输出

        对于每个测试实例,输出序列的次大值,每个输出占一行。

    样例输入

    5
    1 2 3 4 5

    样例输出

    4

    方法一:冒泡排序。因为是求次大值,所以不需要排除所有数的大小,否则会超时。

    方法二:用两个变量记录最大值和次大值。

    注意!!!!!是多组输入(忽略了这句话错了一下午) 

    方法一AC代码:

    #include<bits/stdc++.h>
    using namespace std;
    const int maxn=1e6+10;
    int a[maxn];
    int main()
    {
    	int n,i,j;
    	while(cin>>n&&n!=EOF)
    	{
    		for(i=0;i<n;i++) cin>>a[i];
    		for(i=0;i<3;i++)
    		for(j=0;j<n-i-1;j++)
    		{
    			if(a[j]>a[j+1])
    				{
    					int t=a[j+1];
    					a[j+1]=a[j];
    					a[j]=t;
    				}
    		}
    		cout<<a[n-2]<<endl;
    	}
    	return 0;
    }

    方法二AC代码:

    #include<bits/stdc++.h>
    using namespace std;
    int a[1000000+10];
    int main()
    {
    	int n,max1,max2;
    	while(cin>>n&&n!=EOF)
    	{
    		for(int i=0;i<n;i++) cin>>a[i];
    		max1=a[0];
    		max2=INT_MIN;
    		for(int i=1;i<n;i++)
    		{
    			if(max1<a[i])
    			{
    				int t=a[i];
    				a[i]=max1;
    				max1=t;
    				if(max2<a[i]) max2=a[i];
    			}
    			else if(max1>=a[i])
    			{
    				if(max2<a[i]) max2=a[i];
    			}
    		}
    		cout<<max2<<endl;
    	 } 
    	
    	
    	return 0;
    }

    方法三AC代码(sort):

    #include<bits/stdc++.h>
    using namespace std;
    const int maxn=1e6+10;
    int a[maxn];
    bool cmp(int a,int b)
    {
    	return a>b;
    }
    int main()
    {
    	int n,i;
    	while(~scanf("%d",&n))
    	{
    		for(i=0;i<n;i++) scanf("%d",&a[i]);
    		sort(a,a+n,cmp);
    		printf("%d
    ",a[1]);
    	}
    	return 0;
    } 
  • 相关阅读:
    Hadoop 无法实现HA
    Hive 常见设置
    Hive 查看表的文件个数(用于分析小文件)
    Hive 窄表转宽表 , 长表转宽表
    MapReduce 实现分片取TopN 再Reduce取TopN
    Hbase 如何用对rowkey加盐
    VMware虚拟机安装Ubuntu操作系统
    使用springboot进行文件的上传下载操作(有源码)
    使用图片定位图片拍摄的具体位置
    vue实现Element-ui省市区三级联动(包含省市区文件和省市文件)
  • 原文地址:https://www.cnblogs.com/Friends-A/p/9309030.html
Copyright © 2020-2023  润新知