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;

}

相关推荐
大可不必了6 小时前
03 函数定义和调用
开发语言·python
I_belong_to_jesus6 小时前
C++关于分支预测的优化1
开发语言·c++·算法
承渊政道7 小时前
【Python编程—从入门到实践】(记分与闯关:用Python+Pygame,打造越战越精彩的太空大战!)
开发语言·python·pycharm·游戏程序·pygame
爱学习的程序媛7 小时前
Python常用框架梳理
开发语言·后端·python·ai·web·后端框架·python框架
Rabitebla7 小时前
【Linux】进程控制(十二) 自定义 Shell(二):内建命令与进程工作目录管理
linux·c++·笔记·学习·bash
eggwyw9 小时前
Anaconda安装卸载的详细流程指南
开发语言·python
码客-ygluu13 小时前
一个通用游戏数据服务器
c++·架构
another heaven13 小时前
【C/C++ Ranges 是零开销抽象吗?拆开管道、惰性求值和编译期膨胀】
c语言·开发语言·c++
Code_Solitude13 小时前
C语言动态内存 + 柔性数组 + 数组名退化
c语言·算法·柔性数组