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

递增三元组

[蓝桥杯 2018 省 B] 递增三元组

题目描述

给定三个整数数组 A=[A1,A2,⋯,AN]A = [A_1, A_2,\cdots, A_N]A=[A1,A2,,AN]B=[B1,B2,⋯,BN]B = [B_1, B_2,\cdots, B_N]B=[B1,B2,,BN]C=[C1,C2,⋯,CN]C = [C_1, C_2,\cdots,C_N]C=[C1,C2,,CN]

请你统计有多少个三元组 (i,j,k)(i, j, k)(i,j,k) 满足:

  1. 1≤i,j,k≤N1 \le i, j, k \le N1i,j,kN
  2. Ai<Bj<CkA_i < B_j < C_kAi<Bj<Ck

输入格式

第一行包含一个整数 NNN

第二行包含 NNN 个整数 A1,A2,⋯,ANA_1, A_2,\cdots, A_NA1,A2,,AN

第三行包含 NNN 个整数 B1,B2,⋯,BNB_1, B_2,\cdots, B_NB1,B2,,BN

第四行包含 NNN 个整数 C1,C2,⋯,CNC_1, C_2,\cdots, C_NC1,C2,,CN

输出格式

一个整数表示答案

样例 #1

样例输入 #1

3
1 1 1
2 2 2
3 3 3

样例输出 #1

27

提示

对于 30%30\%30% 的数据,1≤N≤1001 \le N \le 1001N100

对于 60%60\%60% 的数据,1≤N≤10001 \le N \le 10001N1000

对于 100%100\%100% 的数据,1≤N≤1051 \le N \le 10^51N1050≤Ai,Bi,Ci≤1050 \le A_i, B_i, C_i \le 10^50Ai,Bi,Ci105

暴力

#include <bits/stdc++.h>
using namespace std;int main()
{int num,a[100005],b[100005],c[100005],ans;cin>>num;for(int i=1;i<=num;i++)cin>>a[i];for(int i=1;i<=num;i++)cin>>b[i];for(int i=1;i<=num;i++)cin>>c[i];for(int i=1;i<=num;i++){for(int j=1;j<=num;j++){for(int k=1;k<=num;k++){if(a[i]<b[j]&&b[j]<c[k])ans++;}}}cout<<ans;
}

改进暴力

#include <bits/stdc++.h>
#define ll long long
using namespace std;
int a[100005];
int b[100005];
int c[100005];int main()
{int n;scanf("%d",&n);for(int i=0;i<n;i++){scanf("%d",&a[i]);}for(int i=0;i<n;i++){scanf("%d",&b[i]);}for(int i=0;i<n;i++){scanf("%d",&c[i]);}sort(a,a+n);sort(b,b+n);sort(c,c+n);ll aa=0;//a数组标记ll cc=0;//c数组标记ll ans=0;for(int i=0;i<n;i++){// cout<<"----ai="<<aa<<" cc="<<cc<<endl;while(a[aa]<b[i]&&aa<n)//注意条件,不能等于aa++;while(c[cc]<=b[i]&&cc<n)//同上cc++;// cout<<"ai="<<aa<<" cc="<<cc<<endl;ans+=aa*(n-cc);}cout<<ans<<endl;
}
http://www.lryc.cn/news/44784.html

相关文章:

  • java源码阅读 - TreeSet
  • 写毕业论文经验贴
  • 2.7 进程退出、孤儿进程、僵尸进程+2.8 wait函数+2.9 waitpid函数
  • 【新2023Q2模拟题JAVA】华为OD机试 - 预订酒店
  • 一个完整的渗透学习路线是怎样的?如何成为安全渗透工程师?
  • 刷完这60个标准库模块,成为Python骨灰级玩家
  • EasyExcel的简单使用(easyExcel和poi)
  • 命名空间 namespace
  • 我能“C”——初阶指针(上)
  • Android高级工程师工资为何让人艳羡不已
  • 什么猫猫最受欢迎?Python采集猫咪交易数据
  • 使用Nextcloud搭建私人云盘,并内网穿透实现公网远程访问
  • 行业盛会|2023中国(东莞)国际测量控制及仪器仪表展览会
  • redis集群 服务器重启测试
  • Diffusion的unet中用到的AttentionBlock详解
  • ElasticSearch索引文档写入和近实时搜索
  • 【C语言蓝桥杯每日一题】——等差数列
  • EM7电磁铁的技术参数
  • 选择很重要,骑友,怎么挑选骑行装备?
  • 【JUC面试题】Java并发编程面试题
  • spark笔记
  • 丢失了packet.dll原因和解决方法全面指南
  • 算法练习随记(三)
  • 基于Python 进行卫星图像多种指数分析
  • (Week 15)综合复习(C++,字符串,数学)
  • 迪赛智慧数——柱状图(正负条形图):“光棍”排行榜TOP10省份
  • IDEA集成chatGTP让你编码如虎添翼
  • Python3 os.close() 方法、Python3 File readline() 方法
  • Vision Pro 自己写的一些自定义工具(c#)
  • ARM/FPGA/DSP板卡选型大全,总有一款适合您