递增三元组(蓝桥杯18F)

news2025/2/11 9:42:22

暴力求解:

#include<iostream>
using namespace std;
int main() {
	int N;
	cin >> N;
	int* A = new int[N];
	int* B = new int[N];
	int* C = new int[N];
	for (int i = 0; i < N;i++) {
		cin >> A[i];
	}
	for (int i = 0; i < N; i++) {
		cin >> B[i];
	}
	for (int i = 0; i < N; i++) {
		cin >> C[i];
	}
	int cnt = 0;
	for (int i = 0; i < N;i++) {
		for (int j = 0; j < N; j++) {
			for (int z = 0; z < N; z++) {
				if (A[i]<B[j]<C[z]) {
					cnt++;
				}
			}
		}
	}
	cout << cnt;
	return 0;
}

优化排序加二分查找:

#include<iostream>
using namespace std;
void Qsort(int arr[], int L, int R) {
	if (L >= R) {
		return;
	}
	int left = L, right = R, key = arr[L], flag = 0;
	while (left < right) {
		if (flag == 0) {
			if (arr[right] < key) {
				arr[left] = arr[right];
				left++;
				flag = 1;
			}
			else {
				right--;
			}
		}
		else if (flag == 1) {
			if (arr[left] > key) {
				arr[right] = arr[left];
				right--;
				flag = 0;
			}
			else {
				left++;
			}
		}
	}
	arr[left] = key;
	Qsort(arr, L, left - 1);
	Qsort(arr, left + 1, R);
}
int tSearch_min(int* arr,int left,int right,int key, int tag) {
	if (tag == 0 && left>right) {
		return left;
	}
	else if(tag == 1 && left>right) {
		return left;
	}
	int mid = (left + right) / 2;
	if (key < arr[mid]) {
		return tSearch_min(arr, left, mid - 1, key, 0);
	}
	else if (key>arr[mid]) {
		return tSearch_min(arr, mid + 1, right, key, 1);
	}
	else {
		int i;
		for (i = mid; i >= left;i--) {
			if (arr[i] < key ) {
				return (i + 1);
			}
		}
		return (i + 1);
	}
}
int tSearch_max(int* arr, int left, int right, int key, int tag) {
	if (tag == 0 && left > right) {
		return left;
	}
	else if (tag == 1 && left > right) {
		return left;
	}
	int mid = (left + right) / 2;
	if (key < arr[mid]) {
		return tSearch_max(arr, left, mid - 1, key, 0);
	}
	else if (key > arr[mid]) {
		return tSearch_max(arr, mid + 1, right, key, 1);
	}
	else {
		int i;
		for (i = mid; i <= right; i++) {
			if (arr[i] > key) {
				return i;
			}
		}
		return i;
	}
}
int main() {
	int N;
	cin >> N;
	int* A = new int[N];
	int* B = new int[N];
	int* C = new int[N];
	for (int i = 0; i < N; i++) {
		cin >> A[i];
	}
	for (int i = 0; i < N; i++) {
		cin >> B[i];
	}
	for (int i = 0; i < N; i++) {
		cin >> C[i];
	}
	Qsort(A, 0, N - 1);
	Qsort(B, 0, N - 1);
	Qsort(C, 0, N - 1);
	int cnt = 0;
	for (int i = 0; i < N;i++) {
		int key = B[i];
		int min = tSearch_min(A, 0, N - 1, key, 0);
		int max = N - tSearch_max(C, 0, N - 1, key, 0);
		cnt += (min*max);
	}
	cout << cnt;
	return 0;
}

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

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

相关文章

计算机毕业设计SparkStreaming+Kafka广告推荐系统 广告预测 广告数据分析可视化 广告爬虫 大数据毕业设计 深度学习 机器学习

温馨提示&#xff1a;文末有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 温馨提示&#xff1a;文末有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 温馨提示&#xff1a;文末有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 作者简介&#xff1a;Java领…

FreeCAD创建零件(系列1)

1、新建草图绘制1个矩形 2、画1个半圆弧 3、增加一个约束点 4、标注距离 5、将线段转为辅助线 将图中的线段切换为辅助线,线条颜色之后转为蓝色线。 6、离开草图

韶音科技:消费电子行业售后服务实现数字化转型,重塑客户服务体系

韶音科技&#xff1a;消费电子行业售后服务实现数字化转型&#xff0c;重塑客户服务体系 在当今这个科技日新月异的时代&#xff0c;企业之间的竞争早已超越了单纯的产品质量比拼&#xff0c;**售后服务成为了衡量消费电子行业各品牌实力与客户满意度的关键一环。**深圳市韶音…

mes系统对工业数字化转型起到重要作用,它的实际应用有哪些

一、生产计划与调度 在工业数字化转型中&#xff0c;MES 系统能够对生产计划进行高效的管理和调度。通过与企业资源计划&#xff08;ERP&#xff09;系统的集成&#xff0c;MES 可以获取生产订单信息&#xff0c;并根据生产设备的状态、人员安排以及物料供应情况等因素&#x…

网络安全:挑战、技术与未来发展

&#x1f4dd;个人主页&#x1f339;&#xff1a;一ge科研小菜鸡-CSDN博客 &#x1f339;&#x1f339;期待您的关注 &#x1f339;&#x1f339; 1. 引言 在数字化时代&#xff0c;网络安全已成为全球关注的焦点。随着互联网的普及和信息技术的高速发展&#xff0c;网络攻击的…

从零开始玩转Docker:轻松开启容器化之旅

一、什么是 Docker Docker 是一个开源的应用容器引擎&#xff0c;让开发者可以打包他们的应用以及依赖包到一个可移植的容器中&#xff0c;然后发布到任何流行的 Linux 机器上&#xff0c;也可以实现虚拟化。简单来说&#xff0c;Docker 就像是一个超级 “快递箱”&#xff0c…

Python Pandas(5):Pandas Excel 文件操作

Pandas 提供了丰富的 Excel 文件操作功能&#xff0c;帮助我们方便地读取和写入 .xls 和 .xlsx 文件&#xff0c;支持多表单、索引、列选择等复杂操作&#xff0c;是数据分析中必备的工具。 操作方法说明读取 Excel 文件pd.read_excel()读取 Excel 文件&#xff0c;返回 DataF…

【计组】实验五 J型指令设计实验

目录 一、实验目的 二、实验环境 三、实验原理 四、实验任务 代码 一、实验目的 1. 理解MIPS处理器指令格式及功能。 2. 掌握lw, sw, beq, bne, lui, j, jal指令格式与功能。 3. 掌握ModelSim和ISE\Vivado工具软件。 4. 掌握基本的测试代码编写和FPGA开发板使用方法。 …

Redis03 - 高可用

Redis高可用 文章目录 Redis高可用一&#xff1a;主从复制 & 读写分离1&#xff1a;主从复制的作用2&#xff1a;主从复制原理2.1&#xff1a;全量复制2.2&#xff1a;增量复制&#xff08;环形缓冲区&#xff09; 3&#xff1a;主从复制实际演示3.1&#xff1a;基本流程准…

SAP HCM自定义开发程序调用odata api 如何ping外网

网络&#xff1a;我们知道SAP系统一般是部署在内网&#xff0c;Successfactors是云系统&#xff0c;部署在公有云上面&#xff0c;那肯定是公网&#xff0c;那内网和外网数据传递就需要网络做相关的设置&#xff0c;今天遇到的问题是网络说已经把SAP系统映射到公网&#xff0c;…

SAP HCM PFCG读取结构化权限参数

权限&#xff1a;HCM的权限分两套&#xff0c;一套是PFCG的普通权限&#xff0c;一套是结构化权限是根据组织ID限制访问权限的&#xff0c;今天我们讨论的话题如何把这两类的权限组合起来 场景&#xff1a;例如下载有个薪酬管理人员&#xff0c;他复制A和B部门&#xff0c;但是…

Ubuntu 20.04配置网络

1&#xff0c;检查自己网络是否配通。 网络配置成功显示的网络图标 不成功的网络图标 如果看不见网络图标&#xff0c;可以使用ping命令。连接一下百度网。 ping www.baidu.com ping失败的样子 ping成功的样子 2&#xff0c;接下来进入正题&#xff0c;我们开始配置网络。 这…

【hive】记一次hiveserver内存溢出排查,线程池未正确关闭导致

一、使用 MemoryAnalyzer软件打开hprof文件 很大有30G&#xff0c;win内存24GB&#xff0c;不用担心可以打开&#xff0c;ma软件能够生成索引文件&#xff0c;逐块分析内存&#xff0c;如下图。 大约需要4小时。 overview中开不到具体信息。 二、使用Leak Suspects功能继续…

Windows编程:下载与安装 Visual Studio 2019

本节前言 在写作本节的时候&#xff0c;本来呢&#xff0c;我正在写的专栏&#xff0c;是 MFC 专栏。而 VS2010 和 VS2019&#xff0c;正是 MFC 学习与开发中&#xff0c;可以使用的两款软件。然而呢&#xff0c;如果你去学习 Windows API 知识的话&#xff0c;那么&#xff0…

Unity3D实现Shader开发之径向模糊(实现镜头中间不模糊,四周模糊的效果)

系列文章目录 unity工具 文章目录 系列文章目录👉前言👉一、效果图👉二、实现步骤与原理详解👉三、实现方法👉壁纸分享👉总结👉前言 径向模糊(Radial Blur)是一种常见的图像特效,在 Unity 开发中常用于模拟聚焦、运动模糊等效果,让图像产生从中心向四周或从…

iOS 自动翻滚广告条(榜单条)实现方案

引言 在直播场景中&#xff0c;榜单信息、活动公告或者广告推广通常需要以醒目的方式展示&#xff0c;但由于屏幕空间有限&#xff0c;一次只能显示一条内容。为了让用户能够持续关注这些信息&#xff0c;我们可以实现一个自动翻滚的广告条&#xff08;或榜单条&#xff09;&a…

计算机视觉-拟合

一、拟合 拟合的作用主要是给物体有一个更好的描述 根据任务选择对应的方法&#xff08;最小二乘&#xff0c;全最小二乘&#xff0c;鲁棒最小二乘&#xff0c;RANSAC&#xff09; 边缘提取只能告诉边&#xff0c;但是给不出来数学描述&#xff08;应该告诉这个点线是谁的&a…

【JVM详解一】类加载过程与内存区域划分

一、简介 1.1 概述 JVM是Java Virtual Machine&#xff08;Java虚拟机&#xff09;的缩写&#xff0c;是通过在实际的计算机上仿真模拟各种计算机功能来实现的。由一套字节码指令集、一组寄存器、一个栈、一个垃圾回收堆和一个存储方法域等组成。JVM屏蔽了与操作系统平台相关…

Unity项目接入xLua的一种流程

1. 导入xlua 首先导入xlua&#xff0c;这个不用多说 2. 编写C#和Lua交互脚本 基础版本&#xff0c;即xlua自带的版本 using System.Collections; using System.Collections.Generic; using UnityEngine; using XLua; using System; using System.IO;[Serializable] public…

Deepseek 接入Word处理对话框(隐藏密钥)

硅基流动邀请码&#xff1a;1zNe93Cp 邀请链接&#xff1a;网页链接 亲测deepseek接入word&#xff0c;自由调用对话&#xff0c;看截图有兴趣的复用代码&#xff08;当然也可以自己向deepseek提问&#xff0c;帮助你完成接入&#xff0c;但是提问逻辑不一样给出的答案是千差万…