ABC318-E

挺有意思的一题,就当积累一下吧。

做法

枚举i和k会超时,那就只枚举j。

#include<bits/stdc++.h>

using namespace std;

int n;

int a300010;

vector<int> v300010;

int main(){

scanf("%d",&n);

map<int,int> mp;//数的种类

for(int i=1;i<=n;i++){

scanf("%d",&ai);

va\[i].push_back(i);//存下标

mpa\[i]++;

}

long long ans=0;

for(map<int,int>::iterator it=mp.begin();it!=mp.end();it++){

for(int i=1;i<vit-\>first.size();i++){

ans+=1ll*(vit-\>firsti-vit-\>firsti-1-1)*i*(vit-\>first.size()-i);

//(vit-\>firsti-vit-\>firsti-1-1)是不同的j,i是在aj前面ai的个数,(vit-\>first.size()-i)是在aj前面ai的个数

}

}

cout<<ans<<endl;

}

相关推荐
m沐沐29 分钟前
【计算机视觉】OpenCV 物体跟踪——原理、算法与CSRT跟踪器实战
人工智能·python·深度学习·opencv·算法·计算机视觉·人脸识别
前鼻音太阳熊29 分钟前
【MES系统】- 工业HMI状态机可视化实践:从手写SVG到Cytoscape.js的技术选型与踩坑
开发语言·javascript·ecmascript
明日清晨33 分钟前
VS2022禁用 NRVO/返回值优化(不调用拷贝构造函数处理方式)
c++
阿米亚波1 小时前
【C++ STL】std::array
java·开发语言·c++
choumin1 小时前
结构型模式——组合模式
c++·设计模式·组合模式·结构型模式
wuyk5551 小时前
66.嵌入式C语言进阶:共用体(Union)实战指南——单片机内存省一半的神级技巧
c语言·开发语言·stm32·单片机·嵌入式硬件
Ivanqhz1 小时前
Rust #[derive(Serialize)]浅析
开发语言·后端·rust
怪奇云呼军1 小时前
闪电智能 Voice Agent 怎样根据语速、停顿和追问方式切换话术?策略引擎拆解
开发语言·人工智能·网络协议·算法·语音识别·web app
努力努力再努力wz1 小时前
【分布式系统与 RPC 框架系列】从单机瓶颈到远程调用:一文理解分布式架构与 RPC 原理
linux·网络·c++·分布式·网络协议·rpc·架构
稚南城才子,乌衣巷风流1 小时前
树链剖分(树剖)算法详解:从原理到实现
算法·深度优先