hdu 3727 Jewel (主席树)

枚举 ACS 电机状态位 完全解析 本文解析了ACS运动控制器SDK中的MotorStates枚举,该枚举对应控制器状态标志位?MFLAGS。主要介绍了6个核心状态:ACSC_ALL(-1)表示所有轴,ACSC_NONE(0)为空闲状态,ACSC_MST_ENABLE(1)为轴使能,ACSC_MST_INPOS(16)表示到位,ACSC_MST_MOVE(32)为运动中,ACSC_MST_ACC(64)为加速中。文章还补充了完整的枚举定义,包含报警、回零等状态,并提供了在晶圆AOI4轴运动中的典型应用场景,如判断轴状态、运动条件等。最后强调只 阅读详情

题意:

思路:

     主席树模板题,其实权值线段树也行,练练板子熟练度了
     每次Insert就是新开一颗树,区间第k大和总体第k大就是正常的静态主席树操作,查询排名要注意,是包含那个数的

错误及反思:

代码:

#include<cstdio>
#include<algorithm>
#include<vector>
#include<cstring>
using namespace std;
#define lson l,m
#define rson m+1,r
const int N = 100100;
int sum[30*N],ls[N*30],rs[N*30],root[N],cnt,que,Case=1,tot;
long long q1,q2,q3;
vector<int> v;
struct Q{
    char k; int l,r,d;
}q[35100*3+N];

int getid(int x){return lower_bound(v.begin(),v.end(),x)-v.begin()+1;}

void init(){
    cnt=0; v.clear();
    tot=1; q1=0;
    q2=0; q3=0;
    v.push_back(0);
}

int build(int l,int r){
    int rt=++cnt;
    ls[rt]=rt; rs[rt]=rt; sum[rt]=0;
    if(l==r) return rt;
    int m=l+r>>1;
    ls[rt]=build(lson); rs[rt]=build(rson);
    return rt;
}

int update(int pre,int v,int l,int r){
    int rt=++cnt;
    ls[rt]=ls[pre]; rs[rt]=rs[pre]; sum[rt]=sum[pre]+1;
    if(l==r) return rt;
    int m=l+r>>1;
    if(m>=v) ls[rt]=update(ls[pre],v,lson);
    else rs[rt]=update(rs[pre],v,rson);
    return rt;
}

int query(int lr,int rr,int k,int l,int r){
    if(l==r) return r;
    int tmp=sum[ls[rr]]-sum[ls[lr]],m=l+r>>1;
    if(tmp>=k) return query(ls[lr],ls[rr],k,lson);
    return query(rs[lr],rs[rr],k-tmp,rson);
}

int querysum(int p,int v,int l,int r){
    if(l==r) return sum[p];
    int m=l+r>>1;
    if(m>=v) return querysum(ls[p],v,lson);
    return sum[ls[p]]+querysum(rs[p],v,rson);
}

int main(){
    while(scanf("%d",&que)!=EOF){
        init();
        for(int i=1;i<=que;i++){
            char ta[10]; scanf("%s",ta);
            if(ta[0]=='I'){
                q[i].k=ta[0]; scanf("%d",&q[i].d);
                v.push_back(q[i].d);
            }
            else if(ta[0]=='Q'&&ta[6]=='1'){
                q[i].k='1'; scanf("%d%d%d",&q[i].l,&q[i].r,&q[i].d);
            }
            else if(ta[0]=='Q'&&ta[6]=='2'){
                q[i].k='2'; scanf("%d",&q[i].d);
            }
            else if(ta[0]=='Q'&&ta[6]=='3'){
                q[i].k='3'; scanf("%d",&q[i].d);
            }
        }

        sort(v.begin(),v.end());v.erase(unique(v.begin(),v.end()),v.end());
        root[0]=build(1,v.size());
        printf("Case %d:\n",Case++);
        for(int i=1;i<=que;i++){
            if(q[i].k=='I') root[tot]=update(root[tot-1],getid(q[i].d),1,v.size()),tot++;
            else if(q[i].k=='1'){
                q1+=v[query(root[q[i].l-1],root[q[i].r],q[i].d,1,v.size())-1];
            }
            else if(q[i].k=='2'){
                q2+=querysum(root[tot-1],getid(q[i].d),1,v.size());
            }
            else{
                q3+=v[query(root[0],root[tot-1],q[i].d,1,v.size())-1];
            }
        }
        printf("%I64d\n%I64d\n%I64d\n",q1,q2,q3);
    }
}
机器人中的数值优化(十五)——PHR增广拉格朗日乘子法 本系列文章主要是我在学习《数值优化》过程中的一些笔记和相关思考,主要的学习资料是深蓝学院的课程《机器人中的数值优化》和高立编著的《数值最优化方法》等,本系列文章篇数较多,不定期更新,上半部分介绍无约束优化,下半部分介绍带约束的优化,中间会穿插一些路径规划方面的应用实例 阅读详情

相关推荐

SQLite学习——Dapper初识

dapper下载:https://www.nuget.org/packages/Dapper/1.40.0

jiDxiaohuo的博客 1296

HDU3727 Jewel (主席树)

题目连接:http://acm.hdu.edu.cn/showproblem.php?pid=3727 题意:输入n,再输入n个操作,操作有四种  Insert X:插入x到序列末尾  query1 L R X:在当前序列中的[l,r]区间找第x小的数。  query2 X:在当前序列中,输出X是第几小的数。  query3 X:找到当前序列中第X小的数是几。  然后输出的是3

blanKey的博客 477

新手避坑指南:在MacBook上为PyTorch正确配置MPS环境,跑通第一个YOLOv8训练

本文详细指导新手如何在MacBook上为PyTorch正确配置MPS环境,并成功运行YOLOv8训练。从环境准备、PyTorch安装到YOLOv8配置和性能调优,提供全面的避坑指南和实用技巧,帮助开发者充分利用Mac的GPU加速能力。

weixin_29100399的博客 228

HDU 3727 Jewel 主席树简单题

题目:http://acm.hdu.edu.cn/showproblem.php?pid=3727 题意:有一个空链,现有如下几种操作: Insert x 把数x插入链中(从右端插入) Query_1 s t k 查询链上区间[s, t]内的第k小值 Query_2 x 查询x在链上是第几小 Query_3 k 查询整条链上的第k小值 思路:首先把所有操作存下来,把要插入的数据离散化,

弱智就要多努力 588

【DAB收音机】DAB 认证介绍

DAB 认证ESTI 标准文档: ETSI 103461实际过认证时,需要根据产品的受众国家及区域,参考当地官方是否有国内认证协议。需要参考当地文档进行功能开发。例如:阿联酋地区用《UAE.S 5021 _ 2018.pdf》标准进行认证。ESTI 的DAB认证协议规定了家用和车载数字无线电的最低要求,及其对应的测试方法,是数字无线电认证标志规定的技术基础。本文以车载数字无线电接收器为例,进行部分DAB认证的介绍,详情请见官方文档。或联系博主获取DAB ESTI 103461的中文翻译资料。

qq_15271231的博客 1219

Apifox 自动化测试新增流程控制条件,复杂测试场景不再是问题

在 if 条件后的输入框填写请求接口得到的变量 viewed ,选择条件为「小于」,输入比较数值 10 ,并在 if 条件下添加「宠物下架处理」步骤。借助新增的自动化测试流程控制条件,测试人员就可以使用 Apifox 去实现更深层更多样的测试应用场景,帮助提升测试效率,减少复杂场景的测试操作。「查询新建宠物」、「修改宠物状态为已售出」和「查询宠物状态是否修改」步骤为当前在售宠物信息盘点的三个标准步骤,所以将这三个步骤合成一组。在循环中添加「查询在售宠物」和「修改宠物状态」步骤;

877

HDU 3727 Jewel 主席树

题意:一个人对一个序列不断进行如下4种操作 1. Insert x :在这个序列的末端放入x这个数字 2. Query_1 s t k :查询当前序列的$[s,t]$区间上的第k小的数字大小 3. Query_2 x :查询当前序列中,x这个数的rank 4. Query_3 k :查询当前整个序列中第k小的数字大小

Brassica_的菜园 606

STM32F103C8T6通过ESP8266连接阿里云物联网平台(附代码)

STM32F103C8T6连接阿里云物联网平台(1)—阿里云lot Studio控制 Web开发 分享一下自己使用stm32f103c8t6通过ESP_01模块连接阿里云物联网平台,实现温湿度上传和控制命令下达的过程,能力有限,用的是最简单的方法,如有错误,多多担待。 一、硬件选型 1、 stm32f103c8t6 2、ESP_01 wifi模块 3、其他 二、硬件连接 WSP_01 STM32F103C8T6 RXD PA2 TXD PA3 RES PA4 VCC 3.3

weixin_A13253323604 3万+

HDU 3727 Jewel 简单主席树

注意题目中的231指的是2^31,然后就是第k小主席树的应用。 #include #include #include #include using namespace std; const int maxn=210005; struct pi{ int lson,rson; int sum; }pp[maxn*21]; int root[maxn],tot,cc,x[maxn];

huantwofat 597

抑制电磁干扰(EMI)的实用电路技术

抑制电磁干扰(EMI)的实用电路技术 qtFK_EMC_EMI 【导读】本系列文章的第 1 部分至第 4 部分详细介绍了开关电源稳压器引起的传导发射和辐射发射,包括噪声产生机制、测量要求、频率范围、适用的测试限值、传播模式和寄生效应。在第 5 部分中,我将基于这一理论基础介绍抑制电磁干扰 (EMI) 的实用电路技术。 一般来说,电路原理图和印刷电路板 (PCB) 对于实现出色的 EMI 性能至关重要。第 3 部分重点强调通过谨慎的元器件选型和 PCB 布局尽量减小“功率回路”寄生电感的重要性。电源转换

学海无涯的专栏 1189

华为OD机考双机位C卷 - 完美走位 (Java & Python& JS & C/C++ & GO )

华为OD机考双机位C卷 - 完美走位(OD上机考试双机位C卷)。提供Java、C++、Python、Go、JavaScript源码实现,并提供完整思路讲解,以及在线OJ模拟做题。

算法大师! 1125

hdu 3727 Jewel(主席树学习第四弹)

题目链接:hdu 3727题目大意:给出n个操作,插入一个数,或者查询: - 查询区间第k大 - 查询某个数的排名 - 查询整体第k大 最后问三种查询的结果之和。题目分析: 首先对数进行离散化 然后对数字建立主席树,第k大的做法详见我的主席树学习第一弹 查询某个数的排名,树状数组直接做就好了,记录每个点是否出现过,然后找到sum(x)就是前缀一共有多少个数,也就是当前数的排名。 AC代码:#

llin-黎辰 1668

YOLO格式数据集【数据增强】终极脚本 | 70+种顶级数据增强方法 | 可带标签增强

YOLO格式数据集【数据增强】终极脚本 | 70+种顶级数据增强方法 | 可带标签增强

Coding... 5501

HDU3727 Jewel(主席树)

传送门:http://acm.hdu.edu.cn/showproblem.php?pid=3727 这题还是挺需要细心的,算是主席树一个挺好的练手题了。 题意:输入n,再输入n个操作,操作有四种 Insert X:插入x到序列末尾 query1 L R X:在当前序列中的[l,r]区间找第x小的数。 query2 X:在当前序列中,输出X是第几小的数。 query3 X:找到当前序

xtttgo的博客 628

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

HDU 3727 Jewel (主席树)

JewelTime Limit: 10000/5000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 1953    Accepted Submission(s): 501 Problem DescriptionJimmy wants to make a special neck...

Rvelamen的博客 1100

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

hdu 3727 Jewel(主席树)

Jewel Time Limit: 10000/5000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 1805    Accepted Submission(s): 455 Problem Description Jimmy wants to make

MR CODER 306

hdu 3727:Jewel(主席树入门题)

hdu 3727:Jewel 很基础的主席树练习题目,

污miao汪的博客 389

hdu 3727 Jewel —— 主席树+离散化+动态数组

Problem Description Jimmy wants to make a special necklace for his girlfriend. He bought many beads with various sizes, and no two beads are with the same size. Jimmy can’t remember all the details a...

天翼之城的博客 226

HDU3727--Jewel (主席树 静态区间第k大)

Jewel Time Limit: 10000/5000 MS (Java/Others)Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 985Accepted Submission(s): 247 Problem Description Jimmy wants to make a special n...

weixin_30670151的博客 190

Jewel HDU - 3727

http://acm.hdu.edu.cn/showproblem.php?pid=3727 乍一看有insert 以为是伸展树 还要求第k大 直接懵逼.. 但是并没有查询 所以序列顺序是不变的 直接离线 把所有insert的值都记下来 建立主席树 然后1和3是静态区间第k大 2是问某个数第几大 #include &lt;bits/stdc++.h&gt; using namespace ...

sunyutian1998的博客 239

HDU 3727 Jewel

题意:

House 915

HDU3727 Jewel

JewelTime Limit: 10000/5000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Problem Description Jimmy wants to make a special necklace for his girlfriend. He bought many beads with vari

苦鬼·。 320

【HDU】3727 Jewel

操作: 1,从数列结尾插入一个数。 2,查询区间第k小。 3,查询一个数在当前序列是第几小。 4,查询当前序列第k小。 1,离线。因为结尾插入一个数并不会对当前查询的区间造成影响。 2和4,划分树。 3,其实就是划分树的逆过程。 划分树就是二分一个区间,把小于等于区间中心的数放到左边,否则放到右边。 同时还需要记录一个位置,在它位置之前(包括它的位置),有多...

weixin_30757793的博客 57

hdu3727Jewel(划分树+二分)

题目请戳这里 题目大意:给许多操作,4类: 1,insert x,插入一个数x,x范围2^31内(题目描述有误) 2,query_1 s t k,查询范围[s,t]内第k小的数,s 3,query_2 x   查询x的rank,从小到大。x保证出现过 4,query_3 x,查询[1,len]第x小的数。 输出3个数,为3个询问累加和。 题目分析:由于没有删除操作,所以加入的数字序列

ophunter的专栏 1383

HDU-3727 Jewel

Jimmy wants to make a special necklace for his girlfriend. He bought many beads with various sizes, and no two beads are with the same size. Jimmy can't remember all the details ...

weixin_30544657的博客 115
上一篇: zoj 2112 Dynamic Rankings (主席树+树状数组)
下一篇: hdu 5919 Sequence II (主席树)
Roll_Keyboard
博客等级 码龄9年 10粉丝 128原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值