第 45 届国际大学生程序设计竞赛(ICPC)亚洲区域赛(南京)L Let‘s Play Curling

简介: 本题的大体意思是,红队和蓝队在n+m的长度上,红队有n个石头,蓝队有m个,要求求红队尽可能的得分,得分规则是,确定一个c点,红队的某一个石头距离c的位置比蓝队的每一个石头都近,该石头可以得一分。

飞机票


题意:


本题的大体意思是,红队和蓝队在n+m的长度上,红队有n个石头,蓝队有m个,要求求红队尽可能的得分,得分规则是,确定一个c点,红队的某一个石头距离c的位置比蓝队的每一个石头都近,该石头可以得一分。


思路:


20210422210923218.png

其实可以把题意理解为将黄色的区间内找到数量最多的绿色数。


注意两点:


①看自己的代码需不需要去重,因为如果绿色和黄色区间边块重合,那么该绿色一定不能作为答案。


②区间的边界问题,一定要注意边界,因为得提前构造一个区间,【0.无穷】这样。


const int maxn = 1e5;
int a[maxn],b[maxn],c[maxn];
int main()
{
    int n, m, t;
    cin >> t;
    while (t--) {      
        int d1 = 0, idex = 0, i, n, m;
        cin >> n >> m;
        for (i = 0; i < n; i++) {
            cin >> a[i];
        }
        map<int, int >mo;
        for (i = 0; i < m; i++) {
            cin >> b[i];
            mo[b[i]]++;
        }
        for (i = 0; i < n; i++) {
            if (mo[a[i]] == 0)
                c[idex++] = a[i];
        }
        b[m] = 0;
        b[m + 1] = 0x3f3f3f3f + 1000;
        sort(b, b + m + 2);
        sort(c, c + idex);
        d1 = unique(b, b + m + 2) - b;
        int cnt = 0, ans = 0, l = 0, r = idex - 1;
        if (r < 0) {
            cout << "Impossible" << endl;
       continue;
        }
        for (i = 0; i < d1 - 1; i++) {
            cnt = 0;
            while (c[l] > b[i] && c[l] < b[i + 1]) {
                cnt++;
                l++;
                if (l > r) break;
            }
            ans = max(ans, cnt);
        }
        if (ans != 0)
            cout << ans << endl;
        else
            cout << "Impossible" << endl;
    }
    return 0;
}


相关文章
|
存储 监控 Linux
【Shell 命令集合 系统管理 】⭐⭐⭐Linux 查看当前正在运行的进程信息 ps命令 使用指南
【Shell 命令集合 系统管理 】⭐⭐⭐Linux 查看当前正在运行的进程信息 ps命令 使用指南
428 0
|
11月前
|
Python
如何将代码量迅速提升到一万行
如何将代码量迅速提升到一万行
|
机器学习/深度学习 自动驾驶 人机交互
深度学习之虚拟人类行为模拟
基于深度学习的虚拟人类行为模拟是指使用深度学习技术来模仿和预测虚拟环境中人类的行为,从而创建逼真的、智能化的虚拟角色。
269 4
|
9月前
|
数据可视化 数据挖掘
R中单细胞RNA-seq分析教程 (9)
R中单细胞RNA-seq分析教程 (9)
R中单细胞RNA-seq分析教程 (9)
|
XML JSON API
教你如何使用API接口获取数据!
使用API接口获取数据的过程通常涉及到几个步骤,包括了解API、注册获取API密钥、编写代码调用API并处理返回的数据。下面是一个详细的教程。
|
JSON JavaScript 前端开发
Google Charts
Google Charts
245 2
|
传感器 搜索推荐 物联网
5G与物联网:构建万物互联的未来世界
【9月更文挑战第11天】5G与物联网的融合正引领我们进入一个万物互联的未来世界。在这个世界中,各种设备将通过网络紧密相连,实现数据的实时传输和处理。这不仅将极大地方便人们的生活和工作,还将推动社会向智能化、数字化迈进。我们有理由相信,在不久的将来,一个更加智能、便捷、高效的世界将呈现在我们面前。
|
存储 监控 安全
重构项目的十大注意事项
重构项目的十大注意事项
|
网络协议 搜索推荐
阿里云DNS常见问题之阿里云DNS企业邮箱收不到国外的邮件如何解决
阿里云DNS(Domain Name System)服务是一个高可用和可扩展的云端DNS服务,用于将域名转换为IP地址,从而让用户能够通过域名访问云端资源。以下是一些关于阿里云DNS服务的常见问题合集: