NOIP2017 Day2_T3 列队

【71页PPT】工业40及智能制造解决方案(附下载方式) 2013年,工业4.0平台发布白皮书,正式确立其发展战略。工业4.0不仅是技术的升级,更是制造业思维的重构。工业4.0的核心是通过信息物理系统(CPS)实现工厂内外的互联,构建高度灵活的个性化生产模式。它不仅是技术革新,更是一种生产方式的变革,使传统行业界限模糊化,催生新的商业模式和合作形式。德国作为制造业强国,其GDP的25%和出口总额的60%依赖制造业,因此工业4.0成为其维持全球领先地位的重要战略。CPS是工业4.0的基石,通过计算、通信与控制技术(3C)实现物理世界与信息世界的深度融合。 阅读详情

题目大意:

众人皆知。

题解:

考场时打SBT打傻了,被卡爆了。

这就是个傻逼线段树能过的东西,不要问我问为什么能跑这么快?

每一行用线段树维护前m-1个。

最后一列独立开来。

查询用线段树二分。

可以直接预开6e5。

完。

Code:

#include<cstdio>
#include<cstring>
#include<algorithm>
#define ll long long
#define fo(i, x, y) for(int i = x; i <= y; i ++)
using namespace std;

const int N = 300005;
int n, m, Q, x, y;
int tot, g[N], ed[N];
struct node {
    ll x, y; int l, r, s;
} t[16000000];

void update(int i) {
    if(t[i].x != 0) {
        ll m = t[i].x + t[i].y >> 1;
        t[t[i].l].x = t[i].x; t[t[i].l].y = m;
        t[t[i].r].x = m + 1; t[t[i].r].y = t[i].y;
        t[t[i].l].s = t[t[i].l].y - t[t[i].l].x + 1;
        t[t[i].r].s = t[t[i].r].y - t[t[i].r].x + 1;
        t[i].x = 0;
    }
}

void change(int i, int x, int y, int l, int r, ll l1, ll r1) {
    if(x == l && y == r) {
        t[i].x = l1; t[i].y = r1; t[i].s = r1 - l1 + 1;
        return;
    }
    int m = x + y >> 1;
    if(t[i].l == 0) t[i].l = ++ tot;
    if(t[i].r == 0) t[i].r = ++ tot;
    if(r <= m) change(t[i].l, x, m, l, r, l1, r1); else
    if(l > m) change(t[i].r, m + 1, y, l, r, l1, r1); else {
        ll m1 = l1 + m - l;
        change(t[i].l, x, m, l, m, l1, m1);
        change(t[i].r, m + 1, y, m + 1, r, m1 + 1, r1);
    }
    t[i].s = t[t[i].l].s + t[t[i].r].s;
}

int ans1; ll ans2;

void find(int i, int x, int y, int s) {
    if(x == y) {
        ans1 = x; ans2 = t[i].x;
        return;
    }
    int m = x + y >> 1;
    if(t[i].l == 0) t[i].l = ++ tot;
    if(t[i].r == 0) t[i].r = ++ tot;
    update(i);
    t[t[i].l].s >= s ? find(t[i].l, x, m, s) : find(t[i].r, m + 1, y, s - t[t[i].l].s);
}

struct nnode {
    int x, y;
}q[N];

int mx[N];


int main() {
    freopen("phalanx.in", "r", stdin);
    freopen("phalanx.out", "w", stdout);
    scanf("%d %d %d", &n, &m, &Q);
    fo(i, 1, n) mx[i] = m - 1;
    fo(i, 1, Q) {
        scanf("%d %d", &x, &y);
        q[i].x = x; q[i].y = y;
        mx[x] ++;
    }
    mx[n + 1] = n + Q;
    fo(i, 1, n) {
        g[i] = ++ tot;
        change(g[i], 1, mx[i], 1, m - 1, (ll)(i - 1) * m + 1, (ll) i * m - 1);
        ed[i] = m - 1;
    }
    g[n + 1] = ++ tot;
    fo(i, 1, n) change(g[n + 1], 1, mx[n + 1], i, i, (ll) i * m, (ll) i * m);
    ed[n + 1] = n;
    fo(i, 1, Q) {
        x = q[i].x; y = q[i].y;
        if(y == m) {
            find(g[n + 1], 1, mx[n + 1], x);
            change(g[n + 1], 1, mx[n + 1], ans1, ans1, 0, -1);
            ed[n + 1] ++;
            change(g[n + 1], 1, mx[n + 1], ed[n + 1], ed[n + 1], ans2, ans2);
            printf("%lld\n", ans2);
        } else {
            find(g[x], 1, mx[x], y);
            int a1 = ans1; ll a2 = ans2;
            find(g[n + 1], 1, mx[n + 1], x);
            change(g[x], 1, mx[x], a1, a1, 0, -1);
            ed[x] ++;
            change(g[x], 1, mx[x], ed[x], ed[x], ans2, ans2);
            change(g[n + 1], 1, mx[n + 1], ans1, ans1, 0, -1);
            ed[n + 1] ++;
            change(g[n + 1], 1, mx[n + 1], ed[n + 1], ed[n + 1], a2, a2);
            printf("%lld\n", a2);
        }
    }
}
树莓派驱动步进电机 步进电机一般由电机、驱动器构成,树莓派连接驱动器控制电机。 一、接线 DIR+/- 用于控制方向,PUL+/- 用于控制转动; 正极DIR+ 和 PUL+ 接到GPIO口,两个负极接到GPIO口或地线均可,控制的时候不使用。 实验中,DIR+ 接35口,PUL+ 接38口。 树莓派4B GPIO口如图所示 远离树莓派USB的一侧 是 1、2、3号口 二、驱动 DIR控制方向,使用高电平或低电平控制; PUL控制转动,使用脉冲驱动。 三、代码 import RPi.GPI. 阅读详情

相关推荐

D类功放几种常见“爆破音”问题根源与改善措施

在数字D类功放刚上电或功放播放状态切换时,人耳偶尔会听到“嘣”的声音,我们把这个爆破的Pop Noise。数字功放Pop Noise 出现的原因有很多,本文主要分析Pop Noise 出现原因,并提供相应解决方法。

qq_26815321的博客 3592

【NOIP 2017】Day2 T3 列队

Problem Description \(Sylvia\) 是一个热爱学习的女孩子。 前段时间,\(Sylvia\) 参加了学校的军训。众所周知,军训的时候需要站方阵。 \(Sylvia\) 所在的方阵中有\(n*m\)名学生,方阵的行数为 \(n\),列数为 \(m\)。 为了便于管理,教官在训练开始时,按照从前到后,从左到右的顺序给方阵中 的学生从 \(1\) 到 \(n*m\) ...

洛水·锦依卫's Blog 297

半导体EAP系统入门指南:从零开始理解设备自动化程序(附实战案例)

本文深入浅出地介绍了半导体制造中EAP(设备自动化程序)系统的核心作用与工作原理。EAP作为连接MES与生产设备的桥梁,负责指令翻译、数据采集与实时控制,是实现晶圆厂全自动化的关键。文章通过对比手动与自动模式,阐述了EAP在提升效率、保障良率方面的价值,并提供了一个实战案例,帮助读者从零构建对半导体CIM体系中这一关键组件的理解。

weixin_29200741的博客 736

[Noip2017] 列队

Description \(Sylvia\) 是一个热爱学习的女♂孩子。 前段时间,\(Sylvia\) 参加了学校的军训。众所周知,军训的时候需要站方阵。 \(Sylvia\) 所在的方阵中有 \(n \times m\) 名学生,方阵的行数为 \(n\) ,列数为 \(m\) 。 为了便于管理,教官在训练开始时,按照从前到后,从左到右的顺序给方阵中 的学生从 \(1\) 到 \(n \time...

weixin_30391339的博客 133

基于STM32的智能垃圾分类机器人

垃圾分类是城市管理的重要环节,传统人工分拣效率低、成本高。本文设计了一款基于STM32的智能垃圾分类机器人,通过视觉识别与机械臂协同作业,实现垃圾自动分类与投放,适用于社区、公共场所等场景,可显著提升垃圾分类效率。:STM32H743(480MHz Cortex-M7,支持AI加速)本系统实现了垃圾分拣的自动化,显著提升了分类效率。OV5640摄像头(500万像素,支持JPEG输出)支持4类垃圾识别(可回收/厨余/有害/其他)问题讨论,stm32的资料领取可以私信!超声波避障(探测距离0.1-4m)

stm32d1219的博客 1820

人大金仓的‘影子表’sys_user:搞懂Schema优先级,告别字段不存在的报错

本文深入解析人大金仓数据库中‘影子表’sys_user的Schema优先级问题,帮助开发者解决字段不存在的报错。通过分析Schema搜索路径机制,提供四种解决方案,包括连接时指定Schema、动态调整搜索路径、永久修改用户设置和使用完全限定表名,确保查询准确无误。

weixin_30329623的博客 596

「NOIP2017 提高组」列队

首先我们算出每一次操作真实询问的位置。这里的真实位置是指对于每一行加入维护出进入过该行的所有数以及次序,那么答案应该对应的是哪一个数。真实位置可以用之前的 BIT + 二分 解决。考虑到可能成为答案的数很少,用 BIT + 二分 维护第一行。具体地,如果一个数存在,那么在 BIT 中该位置的等于。,那么可以直接求出,否则按询问输入顺序维护每一行从最后一列加入的数。那么如果单独提出最后一列后,每一行的操作就是独立的了。也就是每一次操作就是对。

FuDuoDuo_qwq的博客 217

ICLR 2025 | MambaPEFT: 探索针对Mamba的参数高效微调方法

通过利用海量数据构建大型模型,基于Transformer的模型生态系统已逐步确立。参数高效微调(PEFT)是一项至关重要的技术,它能以最低成本将这些模型应用于下游任务,同时实现高效的性能表现。最近,基于状态空间模型(SSM)的Mamba模型作为Transformer的潜在替代方案受到了广泛关注。尽管已经提出了许多基于Mamba的大规模模型,但如何高效地将预训练的Mamba模型应用于下游任务仍有待研究。在本文中,作者对适用于Mamba的PEFT方法展开了探索性分析。

小白学视觉 327

【NOIP2017提高组】列队

题目背景 NOIP2017提高组 DAY2 T3 题目描述 Sylvia 是一个热爱学习的女孩子。 前段时间,Sylvia 参加了学校的军训。众所周知,军训的时候需要站方阵。Sylvia 所在的方阵中有 n×m 名学生,方阵的行数为 n,列数为 m 。 为了便于管理,教官在训练开始时,按照从前到后,从左到右的顺序给方阵中的学生从 1 到 n×m 编上了号码(参见后面的样例)。即:初始时,第...

ETO的博客 1448

手把手教你学Simulink——基于全桥 LLC 谐振变换器的双向 DC-DC 建模与仿真

本文详细介绍了基于Simulink的双向全桥LLC谐振变换器建模与仿真方法。内容涵盖:1)LLC谐振变换器背景与双向化挑战;2)系统架构设计及关键数学推导(FHA增益分析、双向控制逻辑);3)Simulink建模步骤(功率级搭建、PWM生成、同步整流实现);4)仿真结果分析(正向/反向工作验证、ZVS特性);5)工程实践建议(增益微调、代码生成与HIL测试)。通过手把手教学,帮助读者掌握950V↔48V双向LLC变换器的完整设计流程,实现高效率能量双向流动的同时保持软开关特性,适用于储能系统、车载充电等应用

MHD0815的博客 179

用 ADT 的 RAP Generator 把 RAP 栈一键搭起来:从表到可预览的 OData V4 应用

摘要 SAP RAP Generator 工具能显著提升开发效率,通过一键生成从数据库表到完整 OData UI Service 的全套对象(包括 CDS、Behavior、Service Definition 等)。该工具特别适用于原型验证和标准化应用开发,可节省 60% 以上的基础编码时间。使用时需注意: 表设计需包含关键管理字段(如 last_changed 时间戳) 向导配置决定分层架构和命名规范 生成结果包含可立即预览的 Fiori Elements 界面 后续可专注于业务逻辑增强(校验、权限等)

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 1280

【NOIP2017】队列

题目描述 Sylvia 是一个热爱学习的女♂孩子。 前段时间,Sylvia 参加了学校的军训。众所周知,军训的时候需要站方阵。 Sylvia 所在的方阵中有n×m名学生,方阵的行数为 n,列数为 m。 为了便于管理,教官在训练开始时,按照从前到后,从左到右的顺序给方阵中 的学生从 1 到 n×m 编上了号码(参见后面的样例)。即:初始时,第 i 行第 j 列 的学生的编号是(i−1)×m+...

include / Hdhd 1305

机器人在果园内行巡检仿真(2D雷达、realsense相机)

DiffBot是一种具有两个轮子的自主差动驱动机器人。它的主要处理单元是一个运行Ubuntu Mate 20.04和ROS 1 (ROS Noetic)中间件的Raspberry pi4b。该存储库包含ROS驱动包、真实机器人的ROS控制硬件接口和模拟DiffBot的配置。修改配置文件orchard_world.launch。

如果想成为中心,那么就到中心去吧。 1312

NOIP2017 Day2 T3 列队

戳我看题面 考虑n=1的时候: 维护一个数列,每次删除一个数,再数列的结尾加上一个数,求第K大 这是splay,treap模板题 当然,不单单可以用他们来做 来可以用老少皆宜的线段树来做 维护01数列表示那个数是否存在,提前开出空间 删掉一个数标记成0,加上一个数常规加,求第K大就是线段树上二分 也可以用树状数组来做 与线段树操作一样,求第K大就是树状数组上倍增 当n!=...

YYHS_WSF的博客 320

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

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

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

NOIP2017Day2T3-列队

3、列队Time Limit: 2 Sec  Memory Limit: 512 MBDescription  Sylvia 是一个热爱学习的女♂孩子。  前段时间,Sylvia 参加了学校的军训。众所周知,军训的时候需要站方阵。  Sylvia 所在的方阵中有n×m 名学生,方阵的行数为n,列数为m。   为了便于管理,教官在训练开始时,按照从前到后,从左到右的顺序给方阵中的学生从 1 到 n×...

Mi-Queen 768

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

【Luogu P3960】NOIP2017 day2T3 列队

题目链接 题目描述 Sylvia 是一个热爱学习的女♂孩子。 前段时间,Sylvia 参加了学校的军训。众所周知,军训的时候需要站方阵。 Sylvia 所在的方阵中有 n×m 名学生,方阵的行数为 n ,列数为 m 。 为了便于管理,教官在训练开始时,按照从前到后,从左到右的顺序给方阵中 的学生从 1 到 n×m编上了号码(参见后面的样例)。即:初始时,第 i 行第 j 列 的学生的...

Yu Gi Oh! 265

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

NOIP2017提高组Day2T3 列队 洛谷P3960 线段树

原文链接https://www.cnblogs.com/zhouzhendong/p/9265380.html 题目传送门 - 洛谷P3960 题目传送门 - LOJ#2319 题目传送门 - Vijos P2033 题意   懒了,不概括了。       题解   一开始写了树状数组。   算法非常真,写完全部 WA,但是漏了一步,我快写吐了,于是弃疗之后从某度*了一份代码。...

weixin_30716725的博客 280

NOIP2017 Day2 T3 列队(treap)

  可以直接用treap上大模拟...n+1个treap维护n行的前m-1个点和最后一列。   需要支持删除一个点或者一段区间,而空间并不支持存下所有的点的时候,可以用一个点代替一个区间,记录区间首项的值和区间长度,这样每次查询某个点x的时候就可以用x在某个点y代表的区间里的rank来得到x的值,然后把x删去的时候,就把y这个区间从$[l,r]$拆分成$[l,x-1]$和$[x+1,r...

weixin_30439131的博客 80

[NOIp2017 Day2 T3] 列队phalanx(线段树 / 平衡树)

题目 描述 Sylvia 是一个热爱学习的女♂孩子。 前段时间,Sylvia 参加了学校的军训。众所周知,军训的时候需要站方阵。 Sylvia 所在的方阵中有n×m" role="presentation" style="position: relative;">n×mn×mn \times m名学生,方阵的行数为 n" role="presentation" style

PhantomAgony 866

『动态开点线段数』「NOIP2017Day2T3」列队·毒瘤

题目描述 题解 观察到每一个点离队以后方阵的变化,可以发现: 对于每一个离队,如果是最后一列,变化的仅仅只有最后一列。 如果离队的不是最后一列,则变化的是这一行以及最后一列。 因此,我们需要动态维护nnn行列为[1,m−1][1,m-1][1,m−1]的方阵队形,并且维护最后一列的方阵队形。 我们所进行的操作就是,在删除节点的位置标记一个 111 ,在其余位置标记一个 000 ;那么只需要找...

Ronaldo7_ZYB的博客 260

LUOGU P3960 列队 (noip2017 day2T3)

传送门 解题思路 记得当时考试我还是个孩子,啥也不会QAQ。现在回头写,用动态开点的线段树,在每行和最后一列开线段树,然后对于每次询问,把x行y列的删去,然后再把x行m列的元素加入x行这个线段树,然后再把删去元素加到最后一列里,用一个vector维护变化后的标号。 代码 #include<iostream> #include<cstdio> #in...

weixin_30675967的博客 113

【NOIP2017 D2T3】 列队

题目链接:各大OJ上都有。 闲话:毫不过分地说这题我做了一年。 前置知识:线段树(权值线段树和动态开点,也就是主席树) 30分做法:直接模拟即可。 code: #include<iostream> #include<cstdio> using namespace std; const int N = 1010; int n, m, q; int que[N]...

Romain的博客 247

NOIP2017day2题解

时隔这么久真心的是忘了写noip系列的题解了 刚好今天复习的时候重新做了一遍17年day2的题,所以就写一篇题解 T1 奶酪 题目描述 现有一块大奶酪,它的高度为 hh,它的长度和宽度我们可以认为是无限大的,奶酪 中间有许多 半径相同 的球形空洞。我们可以在这块奶酪中建立空间坐标系,在坐标系中, 奶酪的下表面为z = 0z=0,奶酪的上表面为z = hz=h。 现在,奶酪的下表面有一只...

Amuseir的博客 953

NOIp2017 题解

Day1 T1 小凯的疑惑 题目传送门 考场上打表搞了一个很奇怪的结论,化简后就是a∗b−a−ba*b-a-ba∗b−a−b。具体证明现在还是不大会。 代码: #include&amp;lt;cstdio&amp;gt; #include&amp;lt;cstring&amp;gt; #include&amp;lt;algorithm&amp;gt; using namespace std; typedef long long LL; LL a...

forezxl的博客 1937

[NOIP2017]列队 (Splay)

题目链接 NOIP2017真的是不按常理出牌: 1、数学题不在Day2T1 2、一道水题一道细节极多的模拟题一道不知道怎么形容的题(小凯的疑惑)(因为我太菜了) 3、3道大火题 当时看到列队这题是毫无头绪的,因为数据大得让你存都存不下,于是果断打了个30分暴力(如果打个离散化还能多骗20分)。 蓦然回首,豁然开朗。 思考可知,一个人出列影响的只是当前一行和最后一列,于是,我们只需要对每一行和最后一...

weixin_30413739的博客 82

NOIP2017d2t3 列队 动态开点线段树

题意 有一个n*m的矩阵,一开始位置(x,y)上的元素为(x-1)*m+y。接下来有q个操作:每次操作为(x,y),表示先输出位置(x,y)上的值,设t为(x,y)上的值,然后把第x行[y+1…m]上的每个数往前移一位,把最后一列[x+1…n]上的每个数往前移一位,最后把t放到位置(n,m)。 n,m,q&lt;=300000 分析 考场上大概想到了做法,但由于一个地方把n和m打反而少...

beginend 891
上一篇: NOIP2017 Day1_T3 逛公园
下一篇: 默慈金数学习小记 && 51nod 1556 计算
Cold_Chair
博客等级 码龄11年 158粉丝 410原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值