HNU 练习八 结构体编程题4. 看电影

【问题描述】

       湖南大学正在举办一场重要的国际学术会议,出席会议的 n 位科学家来自不同的国家,每位科学家都只熟悉一种语言,为方便起见,世界上所有的语言用1~1000的数字编号来列出。

       晚上,主办方安排所有科学家去看电影,电影院里有 部电影,每部电影可以用两个不同的整数来描述,即音频语言和字幕语言的编号。看电影的科学家,如果他熟悉电影的音频语言,他会非常高兴,如果他熟悉字幕的语言,他基本上满意,如果他两种都不熟悉,他会感到不满意(请注意,每部电影的音频语言和字幕语言总是不同的)。 

       科学家们决定一起去看同一部电影。你必须帮助他们选择电影,使得非常高兴的科学家的数量是最大的,如果有多部这样的电影,在其中选择能使基本满意的科学家的数量最大,如果还有多部,则全部输出。如果没有这样的电影,则输出"unsatisfied"。

【输入形式】

       输入的第一行为一个正整数 (1 ≤ n ≤ 200000)  ,表示科学家的数量。

       第二行为 n 个正整数a1、a2、...、an (1 ≤ ai ≤ 1000),其中ai 表示第 i 位科学家熟悉的语言编号。

       第三行包含一个正整数m(1 ≤ m ≤ 200000),表示电影院里的电影数量,编号从1~m

       第四行包含 m 个正整数 b1, b2, ..., bm (1 ≤ bj ≤ 1000),其中 b表示第  部电影的音频语言。

        第五行包含 m 个正整数 c1, c2, ..., cm (1 ≤ cj ≤ 1000),其中 cj 表示第  部电影的字幕语言。

         输入保证 bj ≠ cj  。

【输出形式】

       输出为若干整数,从小到大,表示科学家们可以去选择去看的电影的编号。如果没有这样的电影,则输出"unsatisfied"。

【样例输入】

3
2 3 2
2
3 2
2 3

【样例输出】

2

【样例说明】
【评分标准】

我的做法只循环一次,线性做法,考试的时候不推荐这么做。

#include<iostream>
#include<vector>
using namespace std;
struct movie
{int b,c;int c_b=0,c_c=0;
}v[1005];
int main()
{int n,g[1005],m,m_b=-1,m_c=-1,t_b=-1,t_c=-1,tot=0;vector<int>p;cin>>n;for(int i=0;i<n;i++) cin>>g[i];cin>>m;for(int i=0;i<m;i++) cin>>v[i].b;for(int i=0;i<m;i++) cin>>v[i].c;for(int i=0;i<m;i++)//电影循环 {for(int j=0;j<n;j++){if(g[j]==v[i].b) v[i].c_b++;if(g[j]==v[i].c) v[i].c_c++;		}if(m_b<v[i].c_b) //找到更多非常满意的科学家了,重新开始记录数据 {m_b=v[i].c_b,t_c=v[i].c_c;m_c=-1,tot=0;//m_c初始化 ,tot计数也初始化,或者不计数也行,用vector内置函数 .p.clear();//容器初始化 if(t_c>m_c){m_c=t_c;//m_c赋值,下一次进行比较。tot++; p.push_back(i);//对i记录。 }}else if(m_b==v[i].c_b){t_c=v[i].c_c;if(t_c==m_c) p.push_back(i),tot++;else if(t_c>m_c)//又更多的基本满级科学家,则重新记录。 {p.clear();tot=1;p.push_back(i);}}}if(m_b==0&&m_c==0)cout<<"unsatisfied";else{for(int i=0;i<tot;i++)cout<<p[i]+1<<" ";}
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/184267.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【开源】基于JAVA的高校学生管理系统

项目编号&#xff1a; S 029 &#xff0c;文末获取源码。 \color{red}{项目编号&#xff1a;S029&#xff0c;文末获取源码。} 项目编号&#xff1a;S029&#xff0c;文末获取源码。 目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 学生管理模块2.2 学院课程模块2.3 学…

WebSocket 是什么原理?为什么可以实现持久连接?

WebSocket 是一种用于实现持久连接的通信协议&#xff0c;它的原理和工作方式相对复杂&#xff0c;但我们可以尝试以尽可能简单和清晰的方式来解释它。 WebSocket 的原理 在理解 WebSocket 的工作原理之前&#xff0c;我们首先要了解 HTTP 协议的短连接性质。在传统的 HTTP 通信…

Python基础语法之学习表达式进行符串格式化

Python基础语法之学习表达式进行符串格式化 一、代码二、效果 一、代码 print("11等于%d" % (1 1)) print(f"2/1等于{2 / 1}") print("字符串类型是%s" % type("字符串"))二、效果 坚持追求自己的梦想&#xff0c;即使道路漫长曲折&…

Android设置文字颜色渐变

项目中用到了很多文字颜色渐变的设计&#xff0c;因此做一下记录。 核心代码如下&#xff1a; /*** 统一文字渐变色设置* param colors 渐变色字符串数组* param positions 渐变色位置数组&#xff0c;可为空* param start 渐变起始点&#xff0c;可为空* param end 渐变结束…

模板引擎详解

&#x1f4d1;打牌 &#xff1a; da pai ge的个人主页 &#x1f324;️个人专栏 &#xff1a; da pai ge的博客专栏 ☁️宝剑锋从磨砺出&#xff0c;梅花香自苦寒来 &#x1f324;️动态页面的渲染方式 …

盘点68个Android系统源码安卓爱好者不容错过

盘点68个Android系统源码安卓爱好者不容错过 学习知识费力气&#xff0c;收集整理更不易。 知识付费甚欢喜&#xff0c;为咱码农谋福利。 源码下载链接&#xff1a;https://pan.baidu.com/s/1FcBxCe7KpJsh0zFxNZ_7wg?pwd8888 提取码&#xff1a;8888 项目名称 Android …

外贸B2B自建站怎么建?做海洋建站的方法?

如何搭建外贸B2B自建站&#xff1f;外贸独立站建站方法有哪些&#xff1f; 对于许多初次涉足者来说&#xff0c;搭建一个成功的外贸B2B自建站并不是一件轻松的任务。海洋建站将为您详细介绍如何有效地建设外贸B2B自建站&#xff0c;让您的国际贸易之路更加畅通无阻。 外贸B2B…

Android中使用Google Map

在app的使用过程中&#xff0c;我们经常会跟地图进行交互&#xff0c;如果是海外的应用&#xff0c;那选择使用Google Map 是最合适的选择。 在Android中如何使用Google Map&#xff0c;这里做一个简要的说明。 Google API_KEY的申请 Google Map 的使用并不是免费的&#xf…

主播岗位面试

一、自我介绍 在面试的开始阶段&#xff0c;你需要准备一个简洁而有力的自我介绍。这个自我介绍应该包括你的姓名、教育背景、工作经验以及你为何对这个主播职位感兴趣。这个自我介绍应该控制在1-2分钟之内&#xff0c;避免冗长的表述。 二、主播经历和特点 在这个环节&…

javaagent字节码增强浅尝

概述 javaagent 技术广泛应用于对代码的增强&#xff0c;比如统计方法执行时间、GC 信息打印、分布式链路跟踪等&#xff1b;实现方式包括 javassist 和 bytebuddy&#xff0c;bytebuddy 是对 javassist 的改进&#xff1b;类似于 spring 中的 AOP&#xff1b; Instrumentati…

京东数据运营-京东数据平台-京东店铺数据分析-2023年10月京东烘干机品牌销售榜

鲸参谋监测的京东平台10月份烘干机市场销售数据已出炉&#xff01; 10月份&#xff0c;烘干机市场整体销售上涨。鲸参谋数据显示&#xff0c;今年10月份&#xff0c;京东平台上烘干机的销量将近5万件&#xff0c;环比增长约77%&#xff0c;同比增长约22%&#xff1b;销售额将近…

1657. 确定两个字符串是否接近 --力扣 --JAVA

题目 如果可以使用以下操作从一个字符串得到另一个字符串&#xff0c;则认为两个字符串 接近 &#xff1a; 操作 1&#xff1a;交换任意两个 现有 字符。 例如&#xff0c;abcde -> aecdb操作 2&#xff1a;将一个 现有 字符的每次出现转换为另一个 现有 字符&#xff0c;并…

我的养生指南

作为一名程序员&#xff0c;一直坐在电脑前工作对身体造成很大的负担&#xff0c;引起颈椎病、近视、肥胖等问题&#xff0c;因此养生对于程序员来说非常重要。深有体会&#xff0c;不知各位大佬是否有体会 以下是我的养生指南&#xff1a; 做一些适量运动&#xff0c;保持身体…

XUbuntu22.04之OBS强大录屏工具(一百九十五)

简介&#xff1a; CSDN博客专家&#xff0c;专注Android/Linux系统&#xff0c;分享多mic语音方案、音视频、编解码等技术&#xff0c;与大家一起成长&#xff01; 优质专栏&#xff1a;Audio工程师进阶系列【原创干货持续更新中……】&#x1f680; 优质专栏&#xff1a;多媒…

Windows——安装WSL子系统

下载及安装 教程&#xff1a;https://zhuanlan.zhihu.com/p/35801201 报错解决&#xff1a; WSL安装无法打开&#xff08;WslRegisterDistribution failed with error: 0x800701bc…&#xff09; https://www.jianshu.com/p/e2df6d091f73 环境配置 WSL2 的开发环境配置 (基…

NX/UG二次开发—踩坑(边上点与面上点)

获取视图内遮挡面时&#xff0c;特别是与视图平行的面认为是可视面&#xff0c;但NX选择认为是非可视面&#xff0c;设计方案时只检查边上的点&#xff0c;发现一些面显示干涉遮挡&#xff0c;通过打印数据发现&#xff0c;以边上点为参考&#xff0c;获取面上点&#xff0c;会…

kubernetes(K8s)(Namespace、Pod、Deployment、Service资源的基本操作)-04

Namespace Namespace是kubernetes系统中的一种非常重要资源&#xff0c;它的主要作用是用来实现多套环境的资源隔离或者多租户的资源隔离。 默认情况下&#xff0c;kubernetes集群中的所有的Pod都是可以相互访问的。但是在实际中&#xff0c;可能不想让两个Pod之间进行互相的…

leetcode 18. 四数之和(优质解法)

代码&#xff1a; class Solution {public List<List<Integer>> fourSum(int[] nums, int target) {List<List<Integer>> listsnew ArrayList<>();int lengthnums.length;Arrays.sort(nums);for(int i0;i<length-4;){for(int ji1;j<lengt…

第十五届蓝桥杯(Web 应用开发)模拟赛 2 期-大学组(详细分析解答)

目录 1.相不相等 1.1 题目要求 1.2 题目分析 1.3 源代码 2.三行情书 2.1 题目要求 2.2 题目分析 2.3 源代码 3.电影院在线订票 3.1 题目要求 3.2 题目分析 3.3 源代码 4.老虎坤&#xff08;不然违规发不出来&#xff09; 4.1 题目要求 4.2 题目分析 4.3 源代码 …

gdbus使用G_BUS_TYPE_SYSTEM做开机自启服务

我是用我自己在Glib学习&#xff08;28&#xff09; gdbus最简单的例子_gdbus 函数回调-CSDN博客中写的例程&#xff0c;运行服务端和客户端都没有问题&#xff0c;这里使用的bus type是G_BUS_TYPE_SESSION&#xff0c;会话模式。 当我把写好的程序配置成systemd自启动的服务时…