当前位置: 首页 > news >正文

OD C卷 - 结对编程

结对编程(200)

  • 某部门计划通过结队编程来进行项目开发,部门有N名员工,每个员工有唯一的职级,三个员工为一组,结队分组规则如下:
  • 选出序号为i,j,k的员工,职级分别为level[i], level[j], level[k],满足level[i]<level[j]<level[k] 或者 level[i] > level[j] > level[k] 其中0<i<j<k<n
  • 计算可能组合的小组数量,同一员工可以参加多个小组;

输入描述:
第一行:员工总数n,【1,6000】
第二行:按序号依次排列的员工的职级,level[i] 在【1,10^5】
输出描述:
可能结对的小组数量

示例1
输入:
4
1 2 3 4
输出:
4
说明:
(1,2,3)(1,2,4) (1,3,4) (2,3,4)

示例2
输入:
3
5 4 7
输出:
0

思路:

  • 找到满足两个条件的小组;
    • 条件1,0<i<j<k<n;
    • 条件2,level[i]<level[j]<level[k] 或者 level[i] > level[j] > level[k]
  • 两组对应相乘

n = int(input().strip())
nums = list(map(int, input().strip().split()))# 员工序号
compare_count = {}
for i in range(n):compare_count[i] = [0, 0, 0, 0]result = 0
k = 1
while k < n:for j in range(k):if nums[j] < nums[k]:compare_count[k][0] += 1elif nums[j] > nums[k]:compare_count[k][1] += 1k += 1for i in range(n - 2, 0, -1):for j in range(n - 1, i, -1):if nums[j] < nums[i]:compare_count[i][2] += 1elif nums[j] > nums[i]:compare_count[i][3] += 1for i in range(n):temp = compare_count[i]result += temp[0] * temp[3] + temp[1] * temp[2]print(result)

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 计算机毕业设计 高校学术交流平台 Java+SpringBoot+Vue 前后端分离 文档报告 代码讲解 安装调试
  • python实用教程(二):安装配置Pycharm及使用(Win10)
  • 【MySQL】 黑马 MySQL进阶 笔记
  • 解决 VMware 中 Ubuntu文件系统磁盘空间不足
  • 【Leetcode 1832 】 判断句子是否为全字母句 —— 忙忙碌碌哈希表不如一行代码速度快
  • Object.create的原型继承
  • [笔记] hyperf event
  • Html中嵌入module类型的JavaScript代码,如何访问其中的函数或变量?
  • 数论之高斯消元
  • Spring父子容器
  • 文心快码 Baidu Comate 前端工程师观点分享:以文心快码 Baidu Comate为例,智能代码助手需要什么(三)
  • 神经重建在自动驾驶模拟中的应用
  • CSS盒子模型(三)
  • 解读“酒过三巡,菜过五味”:三巡是多长时间?五味是哪五味?
  • ProtoBuf简要介绍与快速上手使用(C++版)
  • 【JavaScript】通过闭包创建具有私有属性的实例对象
  • 【mysql】环境安装、服务启动、密码设置
  • 【跃迁之路】【641天】程序员高效学习方法论探索系列(实验阶段398-2018.11.14)...
  • CentOS学习笔记 - 12. Nginx搭建Centos7.5远程repo
  • download使用浅析
  • HTTP 简介
  • IDEA常用插件整理
  • Javascript设计模式学习之Observer(观察者)模式
  • Linux gpio口使用方法
  • node和express搭建代理服务器(源码)
  • PHP的类修饰符与访问修饰符
  • uva 10370 Above Average
  • 编写高质量JavaScript代码之并发
  • 极限编程 (Extreme Programming) - 发布计划 (Release Planning)
  • 技术胖1-4季视频复习— (看视频笔记)
  • 设计模式(12)迭代器模式(讲解+应用)
  • 数据可视化之 Sankey 桑基图的实现
  • 一加3T解锁OEM、刷入TWRP、第三方ROM以及ROOT
  • Unity3D - 异步加载游戏场景与异步加载游戏资源进度条 ...
  • 京东物流联手山西图灵打造智能供应链,让阅读更有趣 ...
  • ​520就是要宠粉,你的心头书我买单
  • ​Kaggle X光肺炎检测比赛第二名方案解析 | CVPR 2020 Workshop
  • ​LeetCode解法汇总1410. HTML 实体解析器
  • ​决定德拉瓦州地区版图的关键历史事件
  • ###51单片机学习(2)-----如何通过C语言运用延时函数设计LED流水灯
  • (4) openssl rsa/pkey(查看私钥、从私钥中提取公钥、查看公钥)
  • (附源码)springboot太原学院贫困生申请管理系统 毕业设计 101517
  • (论文阅读笔记)Network planning with deep reinforcement learning
  • (免费领源码)Python#MySQL图书馆管理系统071718-计算机毕业设计项目选题推荐
  • (删)Java线程同步实现一:synchronzied和wait()/notify()
  • (五)关系数据库标准语言SQL
  • *(长期更新)软考网络工程师学习笔记——Section 22 无线局域网
  • ./configure、make、make install 命令
  • .NET 2.0中新增的一些TryGet,TryParse等方法
  • .NET Windows:删除文件夹后立即判断,有可能依然存在
  • .NET 编写一个可以异步等待循环中任何一个部分的 Awaiter
  • .net 使用ajax控件后如何调用前端脚本
  • .net(C#)中String.Format如何使用
  • .NET6使用MiniExcel根据数据源横向导出头部标题及数据
  • .secret勒索病毒数据恢复|金蝶、用友、管家婆、OA、速达、ERP等软件数据库恢复