LG5200 「USACO2019JAN」Sleepy Cow Sorting 树状数组
\(\mathrm{Sleepy Cow Sorting}\)
问题描述
LG5200
题解
树状数组。
设\(c[i]\)代表\([1,i]\)中归位数。
显然最终的目的是将整个序列排序为一个上升序列,于是倒序枚举,先把最后有序的插入。
剩下来前面无序的就是要操作的,于是直接输出操作次数。
接下来方案很容易构造。
\(\mathrm{Code}\)
#include<bits/stdc++.h>
using namespace std;void read(int &x){x=0;char ch=1;int fh;while(ch!='-'&&(ch>'9'||ch<'0')) ch=getchar();if(ch=='-') ch=getchar(),fh=-1;else fh=1;while(ch>='0'&&ch<='9') x=(x<<1)+(x<<3)+ch-'0',ch=getchar();x*=fh;
}const int maxn=100000+7;
#define lowbit(pos) (pos&(-pos))int c[maxn],n,a[maxn];void change(int pos,int k){while(pos<=n){c[pos]+=k;pos+=lowbit(pos);}
}int query(int pos){int ret=0;while(pos){ret+=c[pos];pos-=lowbit(pos);}return ret;
}int ans,cnt;int main(){freopen("sleepy.in","r",stdin);freopen("sleepy.out","w",stdout);read(n);for(int i=1;i<=n;i++) read(a[i]);for(int i=n;i>=1;i--){ans++;--cnt;change(a[i],1);if(a[i-1]>a[i]) break;}cnt+=n;printf("%d\n",cnt);for(int i=1;i<=n-ans;i++){--cnt;printf("%d ",query(a[i])+cnt);change(a[i],1);}fclose(stdin);fclose(stdout);return 0;
}
转载于:https://www.cnblogs.com/liubainian/p/11566510.html
LG5200 「USACO2019JAN」Sleepy Cow Sorting 树状数组相关推荐
- 「模拟赛20180307」三元组 exclaim 枚举+树状数组
题目描述 给定 \(n,k\) ,求有多少个三元组 \((a,b,c)\) 满足 \(1≤a≤b≤c≤n\)且\(a + b^2 ≡ c^3\ (mod\ k)\). 输入 多组数据,第一行数据组数\ ...
- P5200 [USACO19JAN]Sleepy Cow Sorting
P5200 [USACO19JAN]Sleepy Cow Sorting 题目描述 Farmer John正在尝试将他的N头奶牛(1≤N≤10^5),方便起见编号为1-N,在她们前往牧草地吃早餐之前排 ...
- loj #535. 「LibreOJ Round #6」花火 树状数组求逆序对+主席树二维数点+整体二分...
$ \color{#0066ff}{ 题目描述 }$ 「Hanabi, hanabi--」 一听说祭典上没有烟火,Karen 一脸沮丧. 「有的哦-- 虽然比不上大型烟花就是了.」 还好 Shinob ...
- HDU 2838 Cow Sorting(双树状数组+求逆序数)
Problem Description Sherlock's N (1 ≤ N ≤ 100,000) cows are lined up to be milked in the evening. Ea ...
- 「雅礼集训 2017 Day7」事情的相似度(后缀自动机+LCT+树状数组)
description 点击查看题目内容 solution Step1 无脑建SAMSAMSAM 两个前缀的最长公共后缀就是parent−treeparent-treeparent−tree上两点的l ...
- 「模拟赛20180306」回忆树 memory LCA+KMP+AC自动机+树状数组
题目描述 回忆树是一棵树,树边上有小写字母. 一次回忆是这样的:你想起过往,触及心底--唔,不对,我们要说题目. 这题中我们认为回忆是这样的:给定 \(2\) 个点 \(u,v\) (\(u\) 可能 ...
- 2023牛客寒假算法基础集训营4_20230130「向上取整」「夹逼dp」「lowbit科学+树状数组性质」「搜索」「倍增跳表」「莫队」
6/13 教育场是有被教育到.(预计会鸽几题. 已过非太水的题们 //B //https://ac.nowcoder.com/acm/contest/46812/B//小构造小数学#include & ...
- P5200 [USACO19JAN]Sleepy Cow Sorting G
题目描述 Farmer John正在尝试将他的 NN 头奶牛(1\le N\le 10^51≤N≤105),方便起见编号为 1\ldots N1-N,在她们前往牧草地吃早餐之前排好顺序. 当前,这些奶 ...
- 树状数组(二)——#10115. 「一本通 4.1 例 3」校门外的树
题目链接:https://loj.ac/problem/10115 解题思路 一开始误会了重复种树的意思,以为是线段树染色QAQ,后来知道了重复种树是指该位置可以种无限棵树,用树状数组就能解决.我们用 ...
最新文章
- Deep Learning部署TVM Golang运行时Runtime
- usaco Cow Tours 牛的旅行
- Jpeglib读取jpg文件
- cocoa 坑爹的委托
- Delphi读写二进制文件
- linux下常用FTP命令
- 线程Thread类的start()方法和run()方法
- 牧马人鼠标g13鼠标宏_达尔优第五代牧马人EM915游戏鼠标评测
- 相聚“金巴蜀”、付诸笑谈中
- arcobjects java开发_ArcGIS Engine SDK for Java 最小示例学习
- 工业相机SDK二次开发
- 背景透明及引发的文字透明问题
- App Store Connect 如何删除应用App
- 冬天别忘晒太阳[整理]
- 图像情感识别研究方向
- C语言编程规范 学习笔记
- Dive_into_Deep_Learning
- 如何检索、写作和顺利发表一篇SCI论文?
- EXCEL干货(1-1): 基本表格操作
- 无忧计算机二级试题题库,计算机等级考试题库,二级Web试题