Codeforces 670C Cinema

2023-11-01

题目链接:https://codeforces.com/problemset/problem/670/C

#include <iostream>
#include <cstdio>
#include <algorithm>

using namespace std;

const int N = 200010;

// n个科学家,数组a存储每个科学家使用的语言
int n, a[N];

// m场电影,数组b和数组c分别存储每场电影的配音语言和字幕语言
int m, b[N], c[N];

// tot和数组lang存储涉及到的所有语言,len存储去重后的语言种数
int lang[N * 3], tot, len;

// 数组p存储每种语言被多少个科学家使用
int p[N * 3];

int get(int x)
{
    return lower_bound(lang + 1, lang + len + 1, x) - lang;
}

int main()
{
    scanf("%d", &n);
    for (int i = 1; i <= n; i++)
    {
        scanf("%d", &a[i]);
        lang[++tot] = a[i];
	}
	
	scanf("%d", &m);
	for (int i = 1; i <= m; i++)
	{
	    scanf("%d", &b[i]);
	    lang[++tot] = b[i];
	}
	for (int i = 1; i <= m; i++)
	{
	    scanf("%d", &c[i]);
	    lang[++tot] = c[i];
	}
	
	// 离散化
	sort(lang + 1, lang + tot + 1);
	len = unique(lang + 1, lang + tot + 1) - (lang + 1);
	
	for (int i = 1; i <= n; i++)
	{
	    p[get(a[i])]++;
	}
	
	int ans = -1, maxb = -1, maxc = -1;
	for (int i = 1; i <= m; i++)
	{
	    int bn = p[get(b[i])]; // 能听懂该场电影配音(愉悦)的科学家个数
	    int cn = p[get(c[i])]; // 能看懂该场电影字幕(满意)的科学家个数
	    if(bn > maxb || (bn == maxb && cn > maxc))
	    {
	        ans = i;
	        maxb = bn;
	        maxc = cn;
	    }
	}
	
	printf("%d\n", ans);
	
	return 0;
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Codeforces 670C Cinema 的相关文章

  • MongoDB C# 驱动程序检查身份验证状态和角色

    这是我使用 MongoDB 身份验证机制登录 MongoDB 的代码 try var credential MongoCredential CreateMongoCRCredential test admin 123456 var sett
  • 我可以使用反射更改 C# 中的私有只读字段吗?

    我想知道 由于很多事情都可以使用反射完成 我可以在构造函数完成执行后更改私有只读字段吗 注 只是好奇 public class Foo private readonly int bar public Foo int num bar num
  • 如何从当前 .NET 表单/应用程序发送密钥 F12

    我非常确定以下按钮激活的表单代码应该在我的 C 应用程序中引发 Control F12 SendKeys F12 但它似乎并没有继续进入 Windows shell 并激活另一个正在侦听它的程序 我的键盘可以用 看起来发送键在某处被拦截 并
  • 如何调试参数化 SQL 查询

    我使用 C 连接到数据库 然后使用 Ad hoc SQL 来获取数据 这个简单的 SQL 查询非常方便调试 因为我可以记录 SQL 查询字符串 如果我使用参数化 SQL 查询命令 有没有办法记录 sql 查询字符串以进行调试 我想就是这样的
  • 将 2D 数组映射到 1D 数组

    我想用一维数组来表示一个二维数组 函数将传递两个索引 x y 和要存储的值 这两个索引代表一维数组的单个元素 并相应地设置它 我知道一维数组需要具有 arrayWidth arrayHeight 的大小 但我不知道如何设置每个元素 例如 如
  • 实体框架代码优先 - 在另一个文件中配置

    使用 Fluent API 将表到实体的映射分开的最佳方法是什么 以便它全部位于单独的类中 而不是内联在 OnModelCreating 方法中 我目前在做什么 public class FooContext DbContext prote
  • 在 Windows Phone 上启动 pdf 文件时出现 System.Runtime.InteropServices.COMException

    我正在尝试使用我之前在另一个应用程序上使用过的以下工作代码打开 pdf 文件 但这一次 当流程到达此行时 我收到 System Runtime InteropServices COMException Windows System Laun
  • 浮点提升:stroustrup vs 编译器 - 谁是对的?

    在 Stroustrup 的新书 C 编程语言 第四版 第 10 5 1 节中 他说 在执行算术运算之前 整数提升用于从较短的整数类型创建整数 类似地 浮点提升是用于从浮点数创建双精度数 我用以下代码确认了第一个声明 include
  • 字节到二进制字符串 C# - 显示所有 8 位数字

    我想在文本框中显示一个字节 现在我正在使用 Convert ToString MyVeryOwnByte 2 但是 当字节开头有 0 时 这些 0 就会被删除 例子 MyVeryOwnByte 00001110 Texbox shows g
  • 阅读 Stack Overflow RSS 源

    我正在尝试获取未回答问题的列表the feed https stackoverflow com feeds 但我在阅读时遇到困难 const string RECENT QUESTIONS https stackoverflow com f
  • Qt中正确的线程方式

    我的图像加载非常耗时 图像很大 并且在加载时也完成了一些操作 我不想阻止应用程序 GUI 我的想法是在另一个线程中加载图像 发出图像已加载的信号 然后用该图像重绘视图 我的做法 void Window loadImage ImageLoad
  • 根据拦截和返回值自动重试客户端WCF调用

    是否可以拦截 WCF 调用的结果并重试该操作 例如 操作的返回值可能包含状态代码 指示我传递到原始调用的会话令牌已过期 在这种情况下 我可以检索新的会话令牌并使用新的会话令牌重试调用 是否可以通过使用 WCF 拦截返回值 检查它 然后以对操
  • glDrawElements 只绘制半个四边形

    这是我的功能 void Object draw2 if mIsInitialised return Tell OpenGL about our vertex and normal data glEnableClientState GL VE
  • 成员初始值设定项列表中的求值顺序是什么?

    我有一个带有一些参数的构造函数 我假设它们是按照列出的顺序初始化的 但在一种情况下 它们似乎是按相反的顺序初始化的 导致中止 当我反转参数时 程序停止中止 下面是我正在使用的语法的示例 a 之前需要初始化b 在这种情况下 你能保证这个初始化
  • 防止复制构造和返回值引用的分配

    如果我有一个函数返回对类实例的引用 但我无法控制其源 比如说list
  • for 循环 - 没有效果的语句

    由于某种原因 我收到错误 statement with no effect关于这个声明 for j idx j lt iter j increment printf from loop idx i int idx punc ctxt j 你
  • _mm_max_ss 在 clang 和 gcc 之间有不同的行为

    我正在尝试使用 clang 和 gcc 交叉编译一个项目 但在使用时发现一些奇怪的差异 mm max ss e g m128 a mm set ss std numeric limits
  • 改进C++逐行读取文件的能力?

    我正在解析大约 500GB 的日志文件 我的 C 版本需要 3 5 分钟 我的 Go 版本需要 1 2 分钟 我正在使用 C 的流来流式传输文件的每一行以进行解析 include
  • 如何仅更改 DateTime 的日期部分,同时保留时间部分?

    我在代码中使用了很多 DateTime 我想将这些日期时间更改为我的特定日期并保留 时间 1 2012 02 02 06 00 00 gt 2015 12 12 06 00 00 2 2013 02 02 12 00 00 gt 2015
  • 当我读取 500MB FileStream 时出现 OutOfMemoryException

    我使用 Filestream 读取大文件 gt 500 MB 但出现 OutOfMemoryException 任何有关它的解决方案 我的代码是 using var fs3 new FileStream filePath2 FileMode

随机推荐

  • C语言程序设计超详细复习总结

    C语言 注意 要了解c语言的函数库 会使用里面的函数 如math h stdlib h库 rand 函数等 计算机元素 1 机器语言 机器指令的集合 机器指令 计算机能够识别的二进制代码 2 符号语言 汇编语言 一些英文字母和数字表示一个指
  • 制作双击可以直接运行的jar包

    原文地址 http www cnblogs com ylawrence3 archive 2009 11 08 1350645 html 1 JAR 文件包 JAR 文件就是 Java Archive File 顾名思意 它的应用是与 Ja
  • Android中启动一个服务,Android服务的两种启动方式

    前言 Service是Android的四大组件之一 也是可执行的程序 服务是Android中实现程序后台运行的解决方案 非常适合去执行那些不需要和用户交互而且还要求长期运行的任务 Service的启动方式有两种 总结一下两种方式的区别 一
  • Leetcode 14 string::find / substr

    思想 利用C string find 函数的特性 暴力匹配 重要特性 substr start length 如果 length 为 0 或负数 将返回一个空字符串 string find str 匹配返回首下标 不匹配返回string n
  • Idea Sonar使用说明

    1 Sonarlint安装 1 1 Idea在线安装 1 打开idea file 文件 setting 设置 1 插件搜索sonarlint进行安装 1 2 Idea离线安装 若idea 无法下载安装该插件 在idea https plug
  • opencv(十三)--边缘检测和梯度

    目标 图像梯度 图像边界等 使用到的函数有 cv2 Sobel cv2 Schar cv2 Laplacian 等 原理 梯度简单来说就是求导 OpenCV 提供了三种不同的梯度滤波器 或者说高通滤波器 Sobel Scharr 和Lapl
  • Qt 之 QVideoFrame转换为QImage

    提示 文章写完后 目录可以自动生成 如何生成可参考右边的帮助文档 文章目录 前言 方法一 最简单 方法二 依赖opencv 方法三 qt5 15版本 前言 在qt框架下 实现相机预览的几种方式在qt相机预览已经描述过了 在该文章的几种方式中
  • 二叉搜索树(数组实现)

    内容 建立二叉搜索树 bool buildtree int k tree k value a index int cur 0 if index a size return true while 1 if a index lt tree cu
  • 正整数序列的数

    正整数序列的数 正整数序列的数量 问题描述 小明想知道 满足以下条件的正整数序列的数量 1 第一项为 n 2 第二项不超过 n 3 从第三项开始 每一项小于前两项的差的绝对值 请计算 对于给定的 n 有多少种满足条件的序列 输入格式 输入一
  • Qt使用gSoap实现webservice服务端和客户端

    文章目录 gSoap工具介绍 1 下载 2 Hello world 开始使用SOAP api 2 1 新建文件夹 2 2 新建服务接口头文件 hello h 2 3 使用 soapcpp2 exe 2 4 拷贝源代码库文件 2 5 Qt 服
  • 第二次作业:微信案例分析

    2 1 介绍产品相关信息 你选择的产品是 微信 为什么选择该产品作为分析 微信是一款全方位的手机通讯应用 帮助我们轻松连接全球好友 微信可以通过SMS MMS网络发送短信 进行视频聊天 与好友一起玩游戏 以及分享自己的生活到朋友圈 让我们感
  • Stable Diffusion 个人推荐的各种模型及设置参数、扩展应用等合集(不断更新中)

    本文主要是把平时使用的模型及其参数进行推荐和整理 相关 安装及其问题解决参考 Windows安装Stable Diffusion WebUI及问题解决记录 运行使用时问题 Windows使用Stable Diffusion时遇到的各种问题整
  • Stack,ArrayDeque,LinkedList的区别

    这段时间把疯狂JAVA再看了一遍 发现Stack ArrayDeque LinkedList都可以作为栈使用 所以就稍微从性能以及实现的细节对比这三者的区别 类继承树 由继承树看出 三者都是Collection的间接实现类 ArrayDeq
  • js中数组删除对象的几种方式总结

    1 关键字删除 2 splice删除 3 特殊位置删除 一 关键字删除 关键字删除是通过js提供的关键字 delete手动删除数组的某一项 使用delete删除掉数组中的元素后 会把该下标出的值置为undefined 数组的长度不会变 ar
  • 一个案例说明高层属性形式化验证

    1 验证软件功能介绍 Beosin VaaS的业务逻辑验证软件 是一款用来检测智能合约上层业务逻辑漏洞的软件 基于合约的白皮书 软件利用形式化方法 首先对单个函数进行属性的描述 在对单个函数进行属性的验证并通过后 基于这些已验证属性 抽取出
  • 号传到服务器为空,URL 传+号到后台变空格问题解决方案

    今天在调试客户端向服务器传递参数时 参数中的 全部变成了空格 原因是URL中默认的将 号转义了 解决方法如下 方法一 修改客户端 将客户端带 的参数中的 全部替换为 2B 这样参数传到服务器端时就能得到 了 方法二 修改服务器端 将空格替换
  • 第六天作业

    include
  • VC++操作SQLserver动态库【含源码】,及动态库使用教程。

    VC 操作SQLserver动态库 含源码 动态库使用Demo程序演示 include
  • Unity Window触摸屏电脑和移动端Input触控,控制相机旋转缩放

    Unity Window触摸屏电脑和移动端Input触控 控制相机旋转缩放 原理就是获取手指滑动的偏移量 来计算 代码帖出来 using UnityEngine using System using System Collections p
  • Codeforces 670C Cinema

    题目链接 https codeforces com problemset problem 670 C include