2021.11.05 eleveni的水省选题的记录
2021.11.05 eleveni的水省选题的记录
因为eleveni比较菜,但是eleveni不想写绿题(总不能说是被绿题虐得不想写),eleveni决定继续水noip原题。
——实际上菜菜的eleveni连noip绿题都不一定能水过/忍不住哭了
[P1966 NOIP2013 提高组] 火柴排队 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)
本质就是求逆序对的题
#include<cstdio>
#include<iostream>
#include<algorithm>
#include<cstring>
#include<queue>
#include<map>
using namespace std;
//最大对最大???WF一道题???
#define int long long
const int N=1e6+10;
const int mod=1e8-3;
int n,a[N],b[N],ai[N],bi[N],mapi[N];
int tree[N];
inline int read(){
int s=0,w=1;
char ch=getchar();
while(ch<'0'||ch>'9'){
if(ch=='-')w=-1;
ch=getchar();
}
while(ch<='9'&&ch>='0'){
s=s*10+ch-'0';
ch=getchar();
}
return s*w;
}
inline int lowbit(int x){
return x&-x;
}
inline void add(int x,int k){
for(int i=x;i<=n;i+=lowbit(i))tree[i]+=k;
}
inline int query(int x){
int fin=0;
for(int i=x;i>0;i-=lowbit(i))fin+=tree[i];
//cout<<fin;
return fin;
}
signed main(){
n=read();
for(int i=1;i<=n;i++)ai[i]=a[i]=read();
sort(ai+1,ai+n+1);
int lena=unique(ai+1,ai+n+1)-ai-1;
for(int i=1;i<=n;i++)a[i]=lower_bound(ai+1,ai+lena+1,a[i])-ai;
for(int i=1;i<=n;i++)bi[i]=b[i]=read();
sort(bi+1,bi+n+1);
int lenb=unique(bi+1,bi+n+1)-bi-1;
for(int i=1;i<=n;i++)b[i]=lower_bound(bi+1,bi+lenb+1,b[i])-bi;
for(int i=1;i<=n;i++)mapi[a[i]]=i,a[i]=i;
for(int i=1;i<=n;i++)b[i]=mapi[b[i]];
//for(int i=1;i<=n;i++)cout<<b[i]<<" ";cout<<endl;
int ans=0;
for(int i=n;i>=1;i--){
ans+=query(b[i]);ans%=mod;
add(b[i],1);
//for(int j=1;j<=10;j++)cout<<tree[j]<<" ";
}
cout<<ans;
return 0;
}
[P3605 USACO17JAN]Promotion Counting P - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)
#include<cstdio>
#include<iostream>
#include<algorithm>
#include<cstring>
using namespace std;
const int N=1e5+10;
typedef long long ll;
int n,a[N],ai[N],cnt,head[N],tree[N],ans[N];
struct node{
int to,next;
}e[N];
inline int read(){
int s=0,w=1;
char ch=getchar();
while(ch<'0'||ch>'9'){
if(ch=='-')w=-1;
ch=getchar();
}
while(ch<='9'&&ch>='0'){
s=s*10+ch-'0';
ch=getchar();
}
return s*w;
}
inline int lowbit(int x){
return x&-x;
}
inline void addi(int x,int k){
for(int i=x;i<=n;i+=lowbit(i))tree[i]+=k;
}
inline int query(int x){
int fin=0;
for(int i=x;i>0;i-=lowbit(i))fin+=tree[i];
return fin;
}
inline void add(int u,int v){
++cnt;
e[cnt].to=v;
e[cnt].next=head[u];
head[u]=cnt;
}
inline void dfs(int x){
ans[x]-=query(n)-query(a[x]-1);
for(int i=head[x];i;i=e[i].next){
int v=e[i].to;
dfs(v);
}
ans[x]+=query(n)-query(a[x]-1);
addi(a[x],1);
}
int main(){
n=read();
for(int i=1;i<=n;i++)ai[i]=a[i]=read();
sort(ai+1,ai+n+1);
int len=unique(ai+1,ai+n+1)-ai-1;
for(int i=1;i<=n;i++)a[i]=lower_bound(ai+1,ai+len+1,a[i])-ai;
for(int i=2;i<=n;i++){
int x=read();
add(x,i);
}
dfs(1);
for(int i=1;i<=n;i++)cout<<ans[i]<<endl;
return 0;
}
2021.11.05 eleveni的水省选题的记录的更多相关文章
- 2021.11.30 eleveni的水省选题的记录
2021.11.30 eleveni的水省选题的记录 因为eleveni比较菜,eleveni决定先刷图论,再刷数据结构,同时每天都要刷dp.当然,对于擅长的图论,eleveni决定从蓝题开始刷.当然 ...
- 2021.11.02 eleveni的水省选题的记录
2021.11.02 eleveni的水省选题的记录 因为eleveni比较菜,所以eleveni决定从绿题开始水 --实际上菜菜的eleveni连绿题都不一定能水过/忍不住哭了 [P2217 HAO ...
- 2021.12.16 eleveni的刷题记录
2021.12.16 eleveni的刷题记录 1. 数论 https://www.luogu.com.cn/problem/P2532 1.1卡特兰数 https://www.luogu.com.c ...
- 日常Javaweb 2021/11/19
Javaweb Dao层: //连接数据库,实现增查功能 package dao; import java.sql.Connection; import java.sql.DriverManager; ...
- 日常Java 2021/11/18
用idea实现Javaweb登录页面 <%-- Created by IntelliJ IDEA. User: Tefuir Date: 2021/11/18 Time: 18:14 To ch ...
- 2021.12.21 eleveni的刷题记录
2021.12.21 eleveni的刷题记录 0. 有意思的题 P6701 [POI1997] Genotype https://www.luogu.com.cn/problem/P6701 状压优 ...
- 2021.12.19 eleveni的刷题记录
2021.12.19 eleveni的刷题记录 0. 本次记录有意思的题 0.1 每个点恰好经过一次并且求最小时间 P2469 [SDOI2010]星际竞速 https://www.luogu.com ...
- 2021.11.16 P2375 [NOI2014] 动物园(EXKMP+差分)
2021.11.16 P2375 [NOI2014] 动物园(EXKMP+差分) https://www.luogu.com.cn/problem/P2375 题意: PS:这道神题的背景让人疑惑,重 ...
- 2021.11.14 CF1583E Moment of Bloom(LCA+图上构造)
2021.11.14 CF1583E Moment of Bloom(LCA+图上构造) https://www.luogu.com.cn/problem/CF1583E 题意: She does h ...
随机推荐
- ansible 五 playbooks剧本使用
一.Playbook 简介 Playbooks与Ad-Hoc相比,是一种完全不同的运用Ansible的方式,而且是非常之强大的:也是系统ansible命令的集合,其利用yaml语言编写,运行过程,an ...
- Flash XSS
示例: 创建一个测试flash,代码如下,导出swf文件 //取m参数 var m=_root.m; //取showInfo参数 var showInfo=_root.showInfo; //调用ht ...
- Linux 系统下你关注过哪些内核参数,说说你知道的?
Tcp/ip io cpu memorynet.ipv4.tcp_syncookies = 1#启用syncookiesnet.ipv4.tcp_max_syn_backlog = 8192#SYN队 ...
- kafka的message格式是什么样的?
一个Kafka的Message由一个固定长度的header和一个变长的消息体body组成 header部分由一个字节的magic(文件格式)和四个字节的CRC32(用于判断body消息体是否正常)构成 ...
- springboot 定时任务 session报错问题
一.自定义类 LocalVariable package com.lh.mes.base.thread; import java.util.Optional; public class LocalVa ...
- memcached 和 MySQL 的 query ?
cache 相比,有什么优缺点? 把 memcached 引入应用中,还是需要不少工作量的.MySQL 有个使用方便的 query cache,可以自动地缓存 SQL 查询的结果,被缓存的 SQL 查 ...
- 信号量,semaphore源代码之我见
信号量,Semaphore,一个限定访问线程数量的工具类,属于并发包java.util.concurrent 里面的类. Semaphore,内部提供了构造方法(包含默认的非公平信号量构造方法,已经可 ...
- pandas - drop()函数
函数形式:DataFrame.drop(labels=None, axis=0, index=None, columns=None, level=None, inplace=False, errors ...
- ESD@TVS选型
一.工作原理 ESD ESD静电保护元件,又称静电抑制二极管.ESD是多个TVS晶粒或二极管采用不同的布局做成具有特定功能的多路或单路ESD保护器件,主要应用于各类通信接口静电保护,如USB.HDMI ...
- 2015 年十佳 HTML5 应用
前言 优秀的前端工程师戴着脚铐跳舞,究竟能把 HTML5 的体验推进到什么程度? 这些 Web apps 是我们运营云集浏览器的网上应用店一年来,我选出的十佳 Web apps.其中参考了同事们的意见 ...