当前位置:网站首页>Codeforces 12D Ball 树形阵列模拟3排序元素
Codeforces 12D Ball 树形阵列模拟3排序元素
2022-07-05 21:41:00 【全栈程序员站长】
大家好,又见面了,我是全栈君
主题链接:点击打开链接
#include<stdio.h>
#include<iostream>
#include<string.h>
#include<set>
#include<vector>
#include<map>
#include<math.h>
#include<queue>
#include<string>
#include<stdlib.h>
#include<algorithm>
using namespace std;
#define N 500005
#define ll int
ll n;
ll c[N], maxn;
inline ll lowbit(ll x){return x&(-x);}
void change(ll pos, ll val){
while(pos)c[pos]=max(c[pos],val), pos-=lowbit(pos);
}
ll maxx(ll pos){
ll ans = -1;
while(pos<=maxn)ans = max(ans,c[pos]),pos+=lowbit(pos);
return ans;
}
struct node{
ll b[3],num;
}w[N];
bool cmp0(node x, node y){return x.b[0]<y.b[0];}
bool cmp1(node x, node y){return x.b[1]>y.b[1];}
int main(){
ll i,j;
while(cin>>n) {
for(i=0;i<n;i++)scanf("%d",&w[i].b[0]);
for(i=0;i<n;i++)scanf("%d",&w[i].b[1]);
for(i=0;i<n;i++)scanf("%d",&w[i].b[2]);
sort(w, w+n, cmp0);
ll rank = 1;
w[0].num = 1;
for(i=1;i<n;i++) {
if(w[i].b[0]==w[i-1].b[0])w[i].num = rank;
else w[i].num = ++rank;
}
sort(w,w+n,cmp1);
for(i=1;i<=rank;i++)c[i]=-1;
maxn = rank;
i = 0;
ll ans = 0;
while(i<n) {
for(j = i; j < n && w[i].b[1] == w[j].b[1]; j++)
if(maxx(w[j].num+1)>w[j].b[2])
ans++;
for(j = i; j < n && w[i].b[1] == w[j].b[1]; j++)
change(w[j].num, w[j].b[2]);
i = j;
}
cout<<ans<<endl;
}
return 0;
}版权声明:本文博客原创文章,博客,未经同意,不得转载。
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/117583.html原文链接:https://javaforall.cn
边栏推荐
- Selenium's method of getting attribute values in DOM
- Zhang Lijun: penetrating uncertainty depends on four "invariants"
- 力扣------经营摩天轮的最大利润
- Analysis and test of ModbusRTU communication protocol
- SecureCRT使用提示
- Efficiency difference between row first and column first traversal of mat data types in opencv
- Evolution of zhenai microservice underlying framework from open source component encapsulation to self-development
- R language learning notes
- Gcc9.5 offline installation
- 校招期间 准备面试算法岗位 该怎么做?
猜你喜欢

How to send samples when applying for BS 476-7 display? Is it the same as the display??

Interviewer: will concurrent programming practice meet? (detailed explanation of thread control operation)

秋招将临 如何准备算法面试、回答算法面试题

PIP install beatifulsoup4 installation failed

2022-07-03-CKA-粉丝反馈最新情况

Introduction of ArcGIS grid resampling method

面试官:并发编程实战会吗?(线程控制操作详解)

Making global exception handling classes with aspect

Efficiency difference between row first and column first traversal of mat data types in opencv

EasyExcel的讀寫操作
随机推荐
int GetMonth( ) const throw( );后面的throw( )什么意思?
How can Huawei online match improve the success rate of player matching
Ethereum ETH的奖励机制
PostGIS installation geographic information extension
Recursive query of multi-level menu data
Gcc9.5 offline installation
oracle 控制文件的多路复用
2.2.3 output of documents
EasyExcel的读写操作
Defect detection - Halcon surface scratch detection
Learning notes of statistical learning methods -- Chapter 1 Introduction to statistical learning methods
Introduction of ArcGIS grid resampling method
Uni app Bluetooth communication
Oracle检查点队列–实例崩溃恢复原理剖析
leetcode:1139. The largest square bounded by 1
matlab绘制hsv色轮图
EBS Oracle 11g 克隆步骤(单节点)
MMAP
Clickhouse copy paste multi line SQL statement error
Interviewer: will concurrent programming practice meet? (detailed explanation of thread control operation)