• P1571 眼红的Medusa


    题目描述

    虽然Miss Medusa到了北京,领了科技创新奖,但是他还是觉得不满意。原因是,他发现很多人都和他一样获了科技创新奖,特别是其中的某些人,还获得了另一个奖项——特殊贡献奖。而越多的人获得了两个奖项,Miss Medusa就会越眼红。于是她决定统计有哪些人获得了两个奖项,来知道自己有多眼红。

    输入输出格式

    输入格式:

    输入第一行,有两个数n,m,表示有n个人获得科技创新奖,m个人获得特殊贡献奖。

    第二行,n个正整数,表示获得科技创新奖的人的编号

    第三行,m个正整数,表示获得特殊贡献奖的人的编号输出格式:

    输出一行,为获得两个奖项的人的编号,按在科技创新奖获奖名单中的先后次序输出。

    输入输出样例

    输入样例#1:

    4 3
    2 15 6 8
    8 9 2
    

    输出样例#1

    2 8

    说明

    对于60%的数据,n<=1000,m<=1000

    对于100%的数据,n<=100000,m<=100000,获得奖项的人的编号在2*10^9以内

    输入数据保证第二行任意两个数不同,第三行任意两个数不同。

    题解:本题如果单纯的暴力搜索肯定是要超时的,所以就要对代码进行优化,对特殊贡献奖排序再搜索,因为输出顺序问题不对科技创新奖排序,搜索采用stl自带的二分搜索

    #include<bits/stdc++.h>
    using namespace std;
    typedef long long ll;
    //求解获得两个奖项的人,并按照科技创新奖的的编号输出
    int a[100010],b[100010];
    int  main(){
        int n,m;
        cin>>n>>m;
        for(int i=0; i<n; i++)cin>>a[i];
        for(int i=0; i<m; i++)cin>>b[i];
        sort(b,b+m);
            int flat=1;
        for(int i=0; i<n; i++){
            if(binary_search(b,b+m,a[i])==true){
                flat==1?cout<<a[i]:cout<<" "<<a[i];
           flat=0; }
        }
    return 0;
    }
  • 相关阅读:
    jQuery实现动态搜索显示功能
    面试
    Struts1和Struts2的区别和对比(完整版)
    JAVA调用增删改的存储过程
    Spring MVC入门
    jQuery Ajax通用js封装
    js ==与===区别
    shell脚本awk
    C++对象模型初窥
    再见,2021
  • 原文地址:https://www.cnblogs.com/ygbrsf/p/12583030.html
Copyright © 2020-2023  润新知