• A1029 Median (25 分)


    一、技术总结

    1. 最开始的想法是直接用一个vector容器,装下所有的元素,然后再使用sort()函数排序一下,再取出中值,岂不完美可是失败了,不知道是容器问题还是什么问题,就是编译没有报错,最后总是感觉不对,在PAT测试点也显示段错误。最后看别人的办法了。大部分是先判断出来中值的位置,然后存储两个数组,最后进行比较,当出现了小于median值的位置的时候那么就可以输出该数了。

    二、参考代码

    #include<iostream>
    #include<algorithm>
    using namespace std;
    const int maxn = 200010;
    const int inf = 0x7fffffff;
    int a[maxn], b[maxn];
    int main(){
    	int n1, n2;
    	cin >> n1;
    	for(int i = 0; i < n1; i++){
    		scanf("%d", &a[i]);
    	}
    	cin >> n2;
    	for(int i = 0; i < n2; i++){
    		scanf("%d", &b[i]);
    	}
    	a[n1] = inf, b[n2] = inf;
    	int median = (n1+n2-1)/2;
    	int i = 0, j = 0, count = 0;
    	while(count < median){
    		if(a[i] < b[j]) i++;
    		else j++;
    		count++;
    	} 
    	if(a[i] < b[j]) printf("%d", a[i]);
    	else printf("%d", b[j]);
    	return 0;
    }
    
    作者:睿晞
    身处这个阶段的时候,一定要好好珍惜,这是我们唯一能做的,求学,钻研,为人,处事,交友……无一不是如此。
    劝君莫惜金缕衣,劝君惜取少年时。花开堪折直须折,莫待无花空折枝。
    曾有一个业界大牛说过这样一段话,送给大家:   “华人在计算机视觉领域的研究水平越来越高,这是非常振奋人心的事。我们中国错过了工业革命,错过了电气革命,信息革命也只是跟随状态。但人工智能的革命,我们跟世界上的领先国家是并肩往前跑的。能身处这个时代浪潮之中,做一番伟大的事业,经常激动的夜不能寐。”
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利.
  • 相关阅读:
    QT调用其他UI并使用QLabel(text)
    QT调用单例模式脚本
    QT 调用另一个UI实现方式
    QT 键值
    (一) Mybatis 源码解析之源码概述
    设计模式之 模板模式开发
    十二、线程池
    (十一)并发容器ConcurrentHashMap
    mybatis plus 踩坑记 -- 自动填充
    C/C++ file
  • 原文地址:https://www.cnblogs.com/tsruixi/p/11883258.html
Copyright © 2020-2023  润新知