BZOJ 4415 洛谷 3988 [Shoi2013]发牌
【题解】
权值线段树。查询当前牌堆顶的牌并且删掉就好了。
#include<cstdio>
#include<algorithm>
#define N 3000010
#define rg register
#define ls (u<<1)
#define rs (u<<1|1)
#define mid ((a[u].l+a[u].r)>>1)
using namespace std;
int n,now=1,tmp,rank;
struct tree{int l,r,cnt;
}a[N];
inline int read(){int k=0,f=1; char c=getchar();while(c<'0'||c>'9')c=='-'&&(f=-1),c=getchar();while('0'<=c&&c<='9')k=k*10+c-'0',c=getchar();return k*f;
}
void build(int u,int l,int r){a[u].l=l; a[u].r=r; a[u].cnt=a[u].r-a[u].l+1;if(l<r) build(ls,l,mid),build(rs,mid+1,r);
}
int query(int u){a[u].cnt--;if(a[u].l==a[u].r) return a[u].l;if(rank<=a[ls].cnt) query(ls);else rank-=a[ls].cnt,query(rs);
}
int main(){n=read(); build(1,1,n);while(n--){now+=read(); now=(now-1)%(n+1)+1; rank=now;printf("%d\n",tmp=query(1));}return 0;
}
转载于:https://www.cnblogs.com/DriverLao/p/8601737.html
BZOJ 4415 洛谷 3988 [Shoi2013]发牌相关推荐
- #莫比乌斯反演#BZOJ 2671 洛谷 4466 和与积 Calc
题目 求有多少对(a,b)(a,b)(a,b)满足1≤a<b≤n1\leq a<b\leq n1≤a<b≤n且a+b∣aba+b|aba+b∣ab 分析 若gcd(a,b)=1gcd ...
- BZOJ 4385 洛谷3594 POI2015 WIL-Wilcze doły
[题解] 手残写错调了好久QAQ...... 洛谷的数据似乎比较水.. n个正整数!!这很重要 这道题是个类似two pointer的思想,外加一个单调队列维护当前区间内长度为d的子序列中元素之和的最 ...
- BZOJ 3720 [洛谷P2137] : Gty的妹子树
Description 我曾在弦歌之中听过你, 檀板声碎,半出折子戏. 舞榭歌台被风吹去, 岁月深处尚有余音一缕-- Gty神(xian)犇(chong)从来不缺妹子-- 他来到了一棵妹子树下,发现每 ...
- BZOJ 2733 | 洛谷 P3224 [HNOI2012]永无乡
https://www.lydsy.com/JudgeOnline/problem.php?id=2733 https://www.luogu.org/problemnew/show/P3224 C+ ...
- bzoj 2653 洛谷 P2839 [国家集训队] middle
2653: middle Time Limit: 20 Sec Memory Limit: 512 MB Submit: 2381 Solved: 1340 [Submit][Status][Di ...
- #距离#JZOJ 3256 BZOJ 3170 洛谷 3964 松鼠聚会
题目 分析 首先这个距离是切比雪夫距离,得把它转换成曼哈顿距离,也就是把(x,y)(x,y)(x,y)变成(x+y2,x−y2)(\frac{x+y}{2},\frac{x-y}{2})(2x+y, ...
- #快速幂,eratosthenes筛#bzoj 3930 洛谷 3172 选数
题目 从区间 [ l ∼ r ] [l\sim r] [l∼r]中选取 n n n个整数,总共有 ( r − l + 1 ) n (r-l+1)^n (r−l+1)n种方案.问最大公约数刚好为 k k ...
- bzoj 1296 洛谷4158 [SCOI2009]粉刷匠 题解
题意简述 一个 n × m n\times m n×m的矩阵,每个位置珂能是粉色(0表示)或者是蓝色(1表示),然后你珂以对同一行里连续一段长度的区间染上一种颜色(覆盖型),你能染 t t t次,每次 ...
- 洛谷 P2046 BZOJ 2007 海拔(NOI2010)
题目描述 YT市是一个规划良好的城市,城市被东西向和南北向的主干道划分为n×n个区域.简单起见,可以将YT市看作 一个正方形,每一个区域也可看作一个正方形.从而,YT城市中包括(n+1)×(n+1)个 ...
- 2019.03.21【ZJOI2007】【BZOJ1095】【洛谷P2056】Hide 捉迷藏(DFS序)(线段树)
BZOJ传送门 洛谷传送门 解析: 其实就是QTREE4的弱化版,可以直接用QTREE4的解法来做. 但是这道题有优秀的O(nlogn)O(n\log n)O(nlogn)做法. 我们考虑利用DFS ...
最新文章
- 利用LVS+Keepalived 实现高性能高可用负载均衡服务器
- python 中super方法的调用
- ArcEngine 获取HDF文件中的子文件
- JavaSE(十八)——IO流之字符流
- 给定的 columnmapping 与源或目标中的任意列均不匹配_闻歌研究 | 图文自动匹配任务研究调研...
- python3命令行安装pip_win10系统下python3安装及pip换源和使用教程
- 【渝粤教育】国家开放大学2018年秋季 0630-21T环境法学 参考试题
- 龙芯录取通知书引争议 中科院回复:龙芯不是汉芯
- 路由器修改hosts实现域名劫持
- linux环境编程apue,《UNIX环境高级编程》中apue.h的问题
- 老打印机USB改无线连接
- JPEG压缩编码算法原理
- 计算机x线断层扫描英文缩写,计算机X线断层扫描
- python字符串加减乘除_从字符串解析加减乘除符号
- 三维空间图像轮廓 c语言,三维模型轮廓线抽取算法.doc
- poi读取doc文档
- 如何在Sqlserver 中创建非dbo 的表
- 列表,元组,集合总结
- js 拖动多div层,, IE,FF下多可行。
- mysql在视图中增加新数据_怎么向Mysql视图中增加新数据