Educational Codeforces Round 89 (Rated for Div. 2)---B. Shuffle(1300分+简单合并区间)

简介: 算法

17.png

题意:

给你一个由n个整数a1, a2, …, an组成的数组。最初ax=1,所有其他元素都等于0。

你必须进行m次操作。在第i次操作中,你选择两个指数c和d,使li≤c,d≤ri,并交换ac和ad。

计算指数k的数量,以便有可能选择操作,使ak=1。

大概就是说通过m次操作,能把哪几个位置换成1,可以看成ax是被染色的,只要在区间的块都能被染色,求最大的被染色的块。


思路:

先找到第一个包含x的区间,这个区间里的所有数都可以被染色,感觉可以当区间合并做

一开始我的区间只有个一点,m的最大范围只有100个,所以100个区间合并,求在x的区间长度,但是合并有原则得按照顺序合并,当前遍历到的区间不能和之后出现的区间合并,只能和之前的合并,所以只需要合并x和出现过x的区间即可

复杂度大概是O(m^2*t)大概1e6

#include<bits/stdc++.h>
using namespace std;
const int maxn=105;
struct node {
    int l,r;
}mo[maxn];
int main()
{
    int n,i,j,t,m,x;
    cin>>t;
    while(t--)
    {
        int l1,r1;
        cin>>n>>x>>m;
        int cnt=0;
        mo[cnt].r=x;
        mo[cnt++].l=x;
        for(i=0;i<m;i++)
        {
            cin>>l1>>r1;
            int flag=0;
            for(j=0;j<1;j++)
            {
                if((l1>=mo[j].l&&l1<=mo[j].r)||(r1<=mo[j].r&&r1>=mo[j].l)||(l1<=mo[j].l&&r1>=mo[j].r))
                {
                    mo[j].l=min(mo[j].l,l1);
                    mo[j].r=max(mo[j].r,r1);
                }
            }
        }
        for(i=0;i<cnt;i++)
        {
            if(x>=mo[i].l&&x<=mo[i].r)
            {
                cout<<mo[i].r-mo[i].l+1<<endl;
                break;
            }
        }
    }
    return 0;
}
相关文章
|
4天前
|
云安全 人工智能 安全
AI被攻击怎么办?
阿里云提供 AI 全栈安全能力,其中对网络攻击的主动识别、智能阻断与快速响应构成其核心防线,依托原生安全防护为客户筑牢免疫屏障。
|
14天前
|
域名解析 人工智能
【实操攻略】手把手教学,免费领取.CN域名
即日起至2025年12月31日,购买万小智AI建站或云·企业官网,每单可免费领1个.CN域名首年!跟我了解领取攻略吧~
|
8天前
|
安全 Java Android开发
深度解析 Android 崩溃捕获原理及从崩溃到归因的闭环实践
崩溃堆栈全是 a.b.c?Native 错误查不到行号?本文详解 Android 崩溃采集全链路原理,教你如何把“天书”变“说明书”。RUM SDK 已支持一键接入。
572 211
|
4天前
|
编解码 Linux 数据安全/隐私保护
教程分享免费视频压缩软件,免费视频压缩,视频压缩免费,附压缩方法及学习教程
教程分享免费视频压缩软件,免费视频压缩,视频压缩免费,附压缩方法及学习教程
229 138
|
存储 人工智能 监控
从代码生成到自主决策:打造一个Coding驱动的“自我编程”Agent
本文介绍了一种基于LLM的“自我编程”Agent系统,通过代码驱动实现复杂逻辑。该Agent以Python为执行引擎,结合Py4j实现Java与Python交互,支持多工具调用、记忆分层与上下文工程,具备感知、认知、表达、自我评估等能力模块,目标是打造可进化的“1.5线”智能助手。
811 59
|
6天前
|
人工智能 移动开发 自然语言处理
2025最新HTML静态网页制作工具推荐:10款免费在线生成器小白也能5分钟上手
晓猛团队精选2025年10款真正免费、无需编程的在线HTML建站工具,涵盖AI生成、拖拽编辑、设计稿转代码等多种类型,均支持浏览器直接使用、快速出图与文件导出,特别适合零基础用户快速搭建个人网站、落地页或企业官网。
1139 157
|
6天前
|
存储 安全 固态存储
四款WIN PE工具,都可以实现U盘安装教程
Windows PE是基于NT内核的轻量系统,用于系统安装、分区管理及故障修复。本文推荐多款PE制作工具,支持U盘启动,兼容UEFI/Legacy模式,具备备份还原、驱动识别等功能,操作简便,适合新旧电脑维护使用。
483 109