【2024最新华为OD-C/D卷试题汇总】[支持在线评测] 部门组队编程(200分) - 三语言AC题解(Python/Java/Cpp)
🍭 大家好这里是清隆学长 ,一枚热爱算法的程序员
✨ 本系列打算持续跟新华为OD-C/D卷的三语言AC题解
💻 ACM银牌🥈| 多次AK大厂笔试 | 编程一对一辅导
👏 感谢大家的订阅➕ 和 喜欢💗
📎在线评测链接
https://app5938.acapp.acwing.com.cn/contest/2/problem/OD1060
🌍 评测功能需要 ⇒ 订阅专栏 ⇐ 后私信联系清隆解锁~
🍓OJ题目截图
文章目录
- 📎在线评测链接
- 🍓OJ题目截图
- 🍊 部门组对编程
- 问题描述
- 输入格式
- 输出格式
- 样例输入
- 样例输出
- 样例输入
- 样例输出
- 数据范围
- 题解
- 参考代码
🍊 部门组对编程
问题描述
LYA所在的部门计划通过结对编程的方式进行项目开发。已知部门中有 n n n 名员工,每个员工都有一个独特的职级。结对编程要求从部门中选出三名员工组成一个小组,设这三名员工的序号分别为 i i i、 j j j、 k k k,他们的职级分别为 l e v e l [ i ] level[i] level[i]、 l e v e l [ j ] level[j] level[j]、 l e v e l [ k ] level[k] level[k],则小组需要满足以下条件之一:
- l e v e l [ i ] < l e v e l [ j ] < l e v e l [ k ] level[i] < level[j] < level[k] level[i]<level[j]<level[k]
- l e v e l [ i ] > l e v e l [ j ] > l e v e l [ k ] level[i] > level[j] > level[k] level[i]>level[j]>level[k]
其中, 0 ≤ i < j < k < n 0 \le i < j < k < n 0≤i<j<k<n。
请你计算在满足上述条件的情况下,可以组建的小组数量。注意,同一员工可以参与多个小组。
输入格式
第一行输入一个正整数 n n n,表示员工总数。
第二行输入 n n n 个正整数,以空格分隔,表示按员工序号排列的职级 l e v e l [ 0 ] level[0] level[0] 到 l e v e l [ n − 1 ] level[n-1] level[n−1]。
输出格式
输出一个整数,表示可以组建的小组数量。
样例输入
4
1 2 3 4
样例输出
4
样例输入
3
5 4 7
样例输出
0
数据范围
- 1 ≤ n ≤ 6000 1 \le n \le 6000 1≤n≤6000
- 1 ≤ l e v e l [ i ] ≤ 1 0 5 1 \le level[i] \le 10^5 1≤level[i]≤105
题解
可以枚举每个员工作为小组的中间位置,然后统计其左侧职级比他低的人数乘以右侧职级比他高的人数,这样就能得到以该员工为中间人所能组成的小组数量。需要注意的是,为了避免重复统计,我们需要将所有员工按照职级从低到高或从高到低排序,然后再进行统计。
具体步骤如下:
- 读入员工总数 n n n 以及每个员工的职级 l e v e l level level。
- 正序计算每个员工作为中间位置所能组成的小组数量:
- 对于第 i i i 个员工,统计其左侧职级比他低的人数 l e f t [ i ] left[i] left[i]。
- 对于第 i i i 个员工,统计其右侧职级比他高的人数 r i g h t [ i ] right[i] right[i]。
- 累加 l e f t [ i ] × r i g h t [ i ] left[i] \times right[i] left[i]×right[i] 到答案中。
- 将员工职级序列反转,然后重复步骤 2。
参考代码
- Python
n = int(input())
level = list(map(int, input().split()))def count_groups(level):n = len(level)res = 0left = [0] * nright = [0] * nfor i in range(n):for j in range(i):if level[j] < level[i]:left[i] += 1for j in range(i + 1, n):if level[j] > level[i]:right[i] += 1for i in range(n):res += left[i] * right[i]return resres = count_groups(level)
res += count_groups(level[::-1])
print(res)
- Java
import java.util.Scanner;public class Main {public static void main(String[] args) {Scanner sc = new Scanner(System.in);int n = sc.nextInt();int[] level = new int[n];for (int i = 0; i < n; i++) {level[i] = sc.nextInt();}long res = countGroups(level);res += countGroups(reverse(level));System.out.println(res);}private static long countGroups(int[] level) {int n = level.length;long res = 0;int[] left = new int[n];int[] right = new int[n];for (int i = 0; i < n; i++) {for (int j = 0; j < i; j++) {if (level[j] < level[i]) {left[i]++;}}for (int j = i + 1; j < n; j++) {if (level[j] > level[i]) {right[i]++;}}}for (int i = 0; i < n; i++) {res += (long) left[i] * right[i];}return res;}private static int[] reverse(int[] level) {int n = level.length;int[] res = new int[n];for (int i = 0; i < n; i++) {res[i] = level[n - i - 1];}return res;}
}
- Cpp
#include <bits/stdc++.h>
using namespace std;long long countGroups(vector<int>& level) {int n = level.size();long long res = 0;vector<int> left(n, 0), right(n, 0);for (int i = 0; i < n; i++) {for (int j = 0; j < i; j++) {if (level[j] < level[i]) {left[i]++;}}for (int j = i + 1; j < n; j++) {if (level[j] > level[i]) {right[i]++;}}}for (int i = 0; i < n; i++) {res += (long long) left[i] * right[i];}return res;
}int main() {int n;cin >> n;vector<int> level(n);for (int i = 0; i < n; i++) {cin >> level[i];}long long res = countGroups(level);reverse(level.begin(), level.end());res += countGroups(level);cout << res << endl;return 0;
}
相关文章:
![](https://img-blog.csdnimg.cn/direct/3fdc1bec4c6f4205b6d3a0d646eb4d01.png)
【2024最新华为OD-C/D卷试题汇总】[支持在线评测] 部门组队编程(200分) - 三语言AC题解(Python/Java/Cpp)
🍭 大家好这里是清隆学长 ,一枚热爱算法的程序员 ✨ 本系列打算持续跟新华为OD-C/D卷的三语言AC题解 💻 ACM银牌🥈| 多次AK大厂笔试 | 编程一对一辅导 👏 感谢大家的订阅➕ 和 喜欢💗 …...
![](https://img-blog.csdnimg.cn/img_convert/d40694bcc1da16d58b52f1b11464ec4f.jpeg)
民生银行信用卡中心金融科技24届春招面经
本文介绍2024届春招中,中国民生银行下属信用卡中心的金融科技(系统研发方向) 岗位2场面试的基本情况、提问问题等。 2024年04月投递了中国民生银行下属信用卡中心的金融科技(系统研发方向) 岗位,暂时不清楚…...
![](https://img-blog.csdnimg.cn/img_convert/ca6e5cc639d67e5123d4b1f0dd92329f.png)
HTML李峋同款跳动的爱心代码(双爱心版)
目录 写在前面 跳动的爱心 完整代码 代码分析 系列推荐 最后想说 写在前面 在浩瀚的网络世界中,总有一些小惊喜能触动我们的心弦。今天,就让我们用HTML语言,探索既神秘又浪漫的李峋同款跳动的爱心代码吧。 首先,让我们一起…...
![](https://img-blog.csdnimg.cn/direct/97b451cb46144218ad94dbc85709f9fb.png)
【linux】内核从tcp层调用IP层摸索中
合入代码: 登录 - Gitee.comhttps://gitee.com/r77683962/linux-6.9.0/commit/f5a93955e16d148a70f98e0f300f455b3ab594f3 这是运行日志: https://gitee.com/r77683962/linux-6.9.0/raw/master/test_log/kern_tcp_ip.log 日志截取部分(也…...
![](https://www.ngui.cc/images/no-images.jpg)
Python 中的 Pandas(数据分析与处理)
Pandas 是 Python 中最受欢迎的数据处理库之一,其名字源自于“Panel Data”(面板数据)的缩写。它提供了三种主要的数据结构:Series , DataFrame , Panel(在新版本已经被弃用) 数…...
![](https://img-blog.csdnimg.cn/img_convert/b13fa87b3ef6cf2b75088e39fa0dd894.png)
【文档智能 RAG】RAG增强之路-智能文档解析关键技术难点及PDF解析工具PDFlux
前言 在私域知识问答和企业知识工程领域,结合Retrieval-Augmented Generation(RAG)模型和大型语言模型(LLM)已成为主流方法。然而,企业中存在着大量的PDF文件,PDF解析的低准确性显著影响了基于…...
![](https://www.ngui.cc/images/no-images.jpg)
五大API接口:提升你的应用性能与用户体验
引言: 简述API接口的重要性引入API接口对于提升应用性能和用户体验的贡献 API接口简介: 定义:解释什么是API接口作用:概述API接口在软件开发中的作用 1. 数据访问API 功能描述:提供快速、安全的数据存取功能提升性…...
![](https://img-blog.csdnimg.cn/direct/05396d35b5d84191992b3919d4e1267d.png)
RabbitMQ实践——在Ubuntu上安装并启用管理后台
大纲 环境安装启动管理后台 RabbitMQ是一款功能强大、灵活可靠的消息代理软件,为分布式系统中的通信问题提供了优秀的解决方案。无论是在大规模数据处理、实时分析还是微服务架构中,RabbitMQ都能发挥出色的性能,帮助开发者构建高效、稳定的系…...
![](https://www.ngui.cc/images/no-images.jpg)
Ubuntu中防火墙的使用 和 开放 关闭 端口
目录 1.查看防火墙的状态 2.开启ufw防火墙 3.重启ufw防火墙 4.关闭ufw防火墙 5.设置外来访问默认权限 6.开放普通端口 7.关闭普通端口 8.开放规定协议的端口 9.关闭指定协议端口 10.重启防火墙,是配置生效 1.查看防火墙的状态 sudo ufw status 2.开启uf…...
![](https://img-blog.csdnimg.cn/direct/e52eb55c22b54c15920a9ff46984506c.png)
ansible 模块进阶及变量
yum 模块进阶 - name: install pkgs hosts: webservers tasks: - name: install web pkgs # 此任务通过yum安装三个包 yum: name: httpd,php,php-mysqlnd state: present # 根据功能等,可以将一系列软件放到一个组中,安装软件包组,将会把很…...
![](https://img-blog.csdnimg.cn/direct/a6c9f9bf6b5144378f3076096cd670fb.png)
MYSQL数据库安装
一.编译安装MySQL服务 1.安装环境依赖包 2.将安装mysql 所需软件包传到/opt目录下 mysql-boost-5.7.44.tar tar zxvf mysql-boost-5.7.44.tar.gz 3.配置软件模块 cd /opt/mysql-5.7.44/ cmake \ -DCMAKE_INSTALL_PREFIX/usr/local/mysql \ -DMYSQL_UNIX_ADDR/usr/local/mysq…...
![](https://www.ngui.cc/images/no-images.jpg)
Pycharm配置远程调试
第1步:添加SSH Inerpreter 打开Settings --> Project interpreter配置项,配置如下两项 Project Interpreter添加SSH inerpreter 首次使用的远程环境需要填写ip及账号密码,建立ssh连接,然后选择对应的远端python路径 Path mapp…...
![](https://img-blog.csdnimg.cn/direct/4ba71817e99b42e48d2625f2b9801ced.png)
【Java面试】二十二、JVM篇(下):JVM参数调优与排查
文章目录 1、JVM的参数在哪里设置2、常见的JVM调优参数有哪些3、常见的JVM调优工具有哪些4、Java内存泄漏的排查思路5、CPU飙高的排查思路 1、JVM的参数在哪里设置 war包部署,在tomcat中设置,修改TOMCAT_HOME/bin/catalina.sh 文件 jar包启动࿰…...
![](https://img-blog.csdnimg.cn/direct/799f2c0b9f8f427988c9263dd82a779c.png)
统计信号处理基础 习题解答10-17
题目: 在选择不含信息的或者不假设任何先验知识的先验PDF时,我们需要从数据中得到最大的信息量。在这种方式下,数据是了解未知参数的主要贡献者。利用习题10.15的结果,这种方法可以通过选择使I最大的来实现。对于例10.1的高斯先验PDF,该如何选择和2使得 是不含信息…...
![](https://www.ngui.cc/images/no-images.jpg)
嵌套使用模板类
#include<iostream> using namespace std;template <class Datatype> class Stack { private:Datatype* items;//栈数组int stacksize;//栈的实际大小int top;//栈顶指针 public://构造函数:1)分配栈数组内存,2)把栈顶…...
![](https://img-blog.csdnimg.cn/direct/fe4b7c9dc86a44789e8db12f72d06c14.png)
adb卸载系统应用
1.进入shell adb shell2.查看所有包 pm list packages3.查找包 如查找vivo相关的包 pm list packages | grep vivo发现包太多了,根本不知道哪个是我们想卸载的应用 于是可以打开某应用,再查看当前运行应用的包名 如下: 4.查找当前前台运行的包名 打开某应用,在亮屏状态输入 …...
![](https://img-blog.csdnimg.cn/direct/1646c6a2f4b74e26a645cbe8ddfc2d43.png)
Rapidfuzz,一个高效的 Python 模糊匹配神器
目录 01初识 Rapidfuzz 什么是 Rapidfuzz? 为什么选择 Rapidfuzz? 安装 Rapidfuzz 配置 Rapidfuzz 02基本操作 简单比率计算 03高级功能 查找单个最佳匹配 查找多个最佳匹配 使用阈值优化性能 04实战案例…...
![](https://img-blog.csdnimg.cn/direct/131f95d0184042579bda6dd0d13c36f0.png)
【猫狗分类】Pytorch VGG16 实现猫狗分类1-数据清洗+制作标签文件
Pytorch 猫狗分类 用Pytorch框架,实现分类问题,好像是学习了一些基础知识后的一个小项目阶段,通过这个分类问题,可以知道整个pytorch的工作流程是什么,会了一个分类,那就可以解决其他的分类问题࿰…...
![](https://img-blog.csdnimg.cn/direct/f5bc7812a9d74397933844fe372f9164.png)
磁盘管理 磁盘介绍 MBR
track:磁道,就是磁盘上同心圆,从外向里,依次1号、2号磁道..... sector:扇区,将磁盘分成一个一个扇形区域,每个扇区大小是512字节,从外向里,依次是1号扇区、2号扇区... cy…...
![](https://www.ngui.cc/images/no-images.jpg)
JSON响应中提取特定的信息——6.14山大软院项目实训2
在收到的JSON响应中提取特定的信息(如response字段中的文本)并进行输出,需要进行JSON解析。在Unity中,可以使用JsonUtility进行简单的解析,但由于JsonUtility对嵌套对象的支持有限,通常推荐使用第三方库如N…...
![](https://img-blog.csdnimg.cn/direct/3625647b74a1448587a83f542a6d749a.gif#pic_center)
【C++高阶】高效搜索的秘密:深入解析搜索二叉树
📝个人主页🌹:Eternity._ ⏩收录专栏⏪:C “ 登神长阶 ” 🤡往期回顾🤡:C多态 🌹🌹期待您的关注 🌹🌹 ❀二叉搜索树 📒1. 二叉搜索树&…...
![](https://img-blog.csdnimg.cn/direct/13425a2e6d42416c90f1c30dd80b89e7.png#pic_center)
《软件定义安全》之七:SDN安全案例
第7章 SDN安全案例 1.DDoS缓解 1.1 Radware DefenseFlow/Defense4All Radware在开源的SDN控制器平台OpenDaylight(ODL)上集成了一套抗DDoS的模块和应用,称为Defense4ALL。其架构如下图,主要有两部分:控制器中的安全…...
![](https://img-blog.csdnimg.cn/direct/1df68211d2864a71b5d6a7d02f10ed47.png)
java语言his系统医保接口 云HIS系统首页功能实现springboot框架+Saas模式 his系统项目源码
java语言his系统医保接口 云HIS系统首页功能实现springboot框架Saas模式 his系统项目源码 HIS系统的实施旨在整个医院建设企业级的计算机网络系统,并在其基础上构建企业级的应用系统,实现整个医院的人、财、物等各种信息的顺畅流通和高度共享,…...
![](https://img-blog.csdnimg.cn/direct/409cb7ffeda5414ca2f22b486fd8881f.png)
使用vscode插件du-i18n处理前端项目国际化翻译多语言
前段时间我写了一篇关于项目国际化使用I18n组件的文章,Vue3 TS 使用国际化组件I18n,那个时候还没真正在项目中使用,需求排期还没有定,相当于是预研。 当时就看了一下大概怎么用,改了一个简单的页面,最近需…...
![](https://img-blog.csdnimg.cn/img_convert/92dd41f172b47be16931d1bed6329c42.png)
双系统下,如何隐藏另一个系统分区?
前言 最近有小伙伴在公众号下留言: 小伙伴说:“双系统时,非当前系统的系统盘能不能屏蔽?!比如Win7的系统盘在Win10系统时,盘符成了D盘,安装应用软件时,有些文件就到了D盘࿰…...
![](https://img-blog.csdnimg.cn/direct/3a4bca4e78b64be9bd4388292d369ccc.png)
电脑意外出现user32.dll丢失的八种修复方法,有效解决user32.dll文件丢失
遇到与 user32.dll 相关的错误通常是因为该文件已损坏、丢失、或者与某些软件冲突。今天这篇文章寄给大家介绍八种修复user32.dll丢失的方法,下面是一步步的详细教程来解决这个问题。 1. 重新启动电脑 第一步总是最简单的:重新启动你的电脑。许多小问题…...
![](https://www.ngui.cc/images/no-images.jpg)
CUDA系列-Kernel Launch-8
这里写目录标题 kernel launch 本章主要追踪一下kernel launch的流程,会不断完善。 kernel launch 先抛出一个问题,如果在一个循环中不断的发送kernel(kernel 内部while死循环),会是什么结果。 // kernel 函数 __glo…...
![](https://img-blog.csdnimg.cn/direct/31fce0c2c89247aabe8e30af77f16541.png)
# 消息中间件 RocketMQ 高级功能和源码分析(四)
消息中间件 RocketMQ 高级功能和源码分析(四) 一、 消息中间件 RocketMQ 源码分析:回顾 NameServer 架构设计。 1、RocketMQ 架构设计 消息中间件的设计思路一般是基于主题订阅发布的机制,消息生产者(Producer&…...
![](https://img-blog.csdnimg.cn/img_convert/3e2eecdeb41377dae03448485429cfa7.png)
如何通过数据库与AI实现以图搜图?OceanBase向量功能详解
OceanBase支持向量数据库的基础能力 当前,数据库存储系统与人工智能技术的结合,可以体现在两个主要的应用方向上。 一、近似搜索。它利用大语言模型(LLM,简称大模型)的嵌入(embedding)技术&am…...
![](https://www.ngui.cc/images/no-images.jpg)
Kafka内外网分流配置listeners和advertised.listeners
问题背景: Kafka部署在内网,内网Java服务会使用Kafka收发消息,另外,Java服务会与其他第三方系统使用kafka实现数据同步,也就是外网也会发送消息到kafka,外网IP做了端口映射到了内网,advertised…...
![](/images/no-images.jpg)
中交建设集团网站新闻/永久8x的最新域名
MAVEN仓库分类 Maven仓库分为:本地仓库远程仓库两大类 远程仓库又分为:中央仓库私服其它公共远程仓库 1,在Maven中,任何一个依赖、插件或者项目构建的输出,都可以称之为构件 2,Maven在某个统一的位置存储所…...
![](https://img-blog.csdnimg.cn/img_convert/6530dd850e5e96a73896d8cb6a90478a.png)
网站建设开发平台/爱站在线关键词挖掘
继微软发布了 WSL 2 (Windows Subsystem for Linux 2)之后,前两天正式提供了 WSL2 更新,处于 Insider Fast 通道中的用户可以通过安装 Windows build 18917 更新来体验最新版本的 WSL2。-- Craig Loewen(作者ÿ…...
![](https://img-blog.csdnimg.cn/b8aed5f895ff422999c2f26730f8a8db.png)
四核网站建设/香飘飘奶茶软文
Solo 的 git 页面地址 https://github.com/AgoraIO-Community/Solo Solo 的 git 下载地址 https://github.com/AgoraIO-Community/Solo.git 我的 gitee 下载页面 https://gitee.com/hugang2021/Solo 在运行的时候会报错 已启动生成… 1>------ 已启动生成: 项目: SATECod…...
![](/images/no-images.jpg)
徐州哪家做网站好/网站用户体验优化
在64位 OL7 或者 RHEL7 上安装 Oracle Database 19c 数据库的要求在继续安装之前,请花一些时间认真复查以下各项要求,以避免安装二进制文件期间出现任何明显的问题。下载 Oracle Database 19c 软件从 OTN 下载 Oracle Database 19c 软件 - https://www.o…...
![](https://img-blog.csdnimg.cn/20200313111135107.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3picF8xMjEzOA==,size_16,color_FFFFFF,t_70)
wordpress做文字站/关键词seo优化排名
最近在学习使用EasyDL专业版训练模型,我想试着训练一个情感分析模型,但是手头缺少数据,于是我找到了NLPCC2014_sentiment,在GitHub可以找到,这里我Fork到了码云里以便下载: https://gitee.com/zheng_bo_pu/NLPCC2014_sentiment 下载好以后,打开其中一个数据集,这里我打开了sam…...
![](https://img-blog.csdnimg.cn/img_convert/4e63a0c000741c7d7691211c42ee8462.png)
东莞哪家公司做网站好/seo软文是什么意思
| | | | 上面我们调整不同的 index 只显示出来了一个子项 Widget,如果我们把 IndexedStack 换成 Stack 则会显示成如下效果。 IndexedStack 源码 alignment 对齐方式sizing 填充方式index 显示子项索引children 子项集合 本篇主要聊 index 和 children &…...