当前位置: 首页 > news >正文

【学习笔记】EC-Final 2022 K. Magic

最近的题都只会抄题解😅

首先,操作顺序会影响答案,因此不能直接贪心。其次,因为是求贡献最大,所以可以考虑枚举最终哪些位置对答案产生了贡献,进而转化为全局贡献。

1.1 1.1 1.1 如果 [ l 1 , r 1 ) ⊆ [ l 2 , r 2 ) [l_1,r_1)\subseteq [l_2,r_2) [l1,r1)[l2,r2),那么一定是贪心的先操作 [ l r , r 2 ) [l_r,r_2) [lr,r2),因此这部分限制不用考虑

1.2 1.2 1.2 对于两个区间 [ l 1 , r 1 ) , [ l 2 , r 2 ) [l_1,r_1),[l_2,r_2) [l1,r1),[l2,r2),如果满足 l 1 < l 2 < r 1 < r 2 l1<l2<r_1<r_2 l1<l2<r1<r2,并且选择了 r 1 r_1 r1,那么意味着 l 2 l_2 l2一定比 r 1 r_1 r1先操作;反之亦然,因此 l 2 l_2 l2 r 1 r_1 r1不能同时被选择。注意到 l i , r i l_i,r_i li,ri互不相同,因此我们考虑到了所有位置,并且每个位置至少有一次产生贡献的机会。

容易证明这样不会产生环,因为 r r r是递增的

发现只有 l i l_i li r i r_i ri之间会有连边,问题转化为求二分图最大独立集。

使用 bitset \text{bitset} bitset优化,复杂度 O ( n 3 w ) O(\frac{n^3}{w}) O(wn3)

类似的题目:[ARC092F] Two Faced Edges

#include<bits/stdc++.h>
#define fi first
#define se second
#define pb push_back
#define ll long long
using namespace std;
const int N=5005;
int n,tot,l[N],r[N],match[N];
int px[N],py[N];
bitset<N>to[N],vs;
queue<int>Q;
int bfs(int u){while(Q.size())Q.pop();vs.set(),Q.push(u);int v=-1;while(Q.size()){int x=Q.front();Q.pop();bitset<N>tmp=vs&to[x];for(int y=tmp._Find_first();y<=n;y=tmp._Find_next(y)){int z=match[y];vs[y]=0;if(z==0){match[y]=x,v=x;break;}Q.push(z),px[z]=x,py[z]=y;}if(~v)break;}if(v==-1)return 0;while(v!=u){match[py[v]]=px[v];v=px[v];}return 1;
}
int main(){ios::sync_with_stdio(false);cin.tie(0),cout.tie(0);cin>>n;for(int i=1;i<=n;i++){cin>>l[i]>>r[i];}for(int i=1;i<=n;i++){for(int j=1;j<=n;j++){if(l[i]<l[j]&&l[j]<r[i]&&r[i]<r[j]){to[i][j]=1;}}}for(int i=1;i<=n;i++){tot+=bfs(i);}cout<<2*n-tot;
}

相关文章:

【学习笔记】EC-Final 2022 K. Magic

最近的题都只会抄题解&#x1f605; 首先&#xff0c;操作顺序会影响答案&#xff0c;因此不能直接贪心。其次&#xff0c;因为是求贡献最大&#xff0c;所以可以考虑枚举最终哪些位置对答案产生了贡献&#xff0c;进而转化为全局贡献。 1.1 1.1 1.1 如果 [ l 1 , r 1 ) ⊆ [ …...

MySQL数据库笔记

文章目录 一、初识MySQL1.1、什么是数据库1.2、数据库分类1.3、MySQL简介 二、操作数据库2.1、操作数据库&#xff08;了解&#xff09;2.2、数据库的列类型2.3、数据库的字段属性&#xff08;重点&#xff09;2.4、创建数据库表&#xff08;重点&#xff09;2.5、数据表的类型…...

大数据之Hive(三)

分区表 概念和常用操作 将一个大表的数据按照业务需要分散存储到多个目录&#xff0c;每个目录称为该表的一个分区。一般来说是按照日期来作为分区的标准。在查询时可以通过where子句来选择查询所需要的分区&#xff0c;这样查询效率会提高很多。 ①创建分区表 hive (defau…...

让高分辨率的相机芯片输出低分辨率的图片对于像素级的值有什么影响?

很多图像传感器可以输出多个分辨率的图像&#xff0c;如果选择低分辨率格式的图像输出&#xff0c;对于图像本身会有什么影响呢&#xff1f; 传感器本身还是使用全部像素区域进行感光&#xff0c;但是在像素数据输出时会进行所谓的降采样&#xff08;down-sampling&#xff09…...

FastGPT 接入飞书(不用写一行代码)

FastGPT V4 版本已经发布&#xff0c;可以通过 Flow 可视化进行工作流编排&#xff0c;从而实现复杂的问答场景&#xff0c;例如联网谷歌搜索&#xff0c;操作数据库等等&#xff0c;功能非常强大&#xff0c;还没用过的同学赶紧去试试吧。 飞书相比同类产品算是体验非常好的办…...

蓝桥杯 题库 简单 每日十题 day6

01 删除字符 题目描述 给定一个单词&#xff0c;请问在单词中删除t个字母后&#xff0c;能得到的字典序最小的单词是什么&#xff1f; 输入描述 输入的第一行包含一个单词&#xff0c;由大写英文字母组成。 第二行包含一个正整数t。 其中&#xff0c;单词长度不超过100&#x…...

使用Arduino简单测试HC-08蓝牙模块

目录 模块简介模块测试接线代码测试现象 总结 模块简介 HC-08 蓝牙串口通信模块是新一代的基于 Bluetooth Specification V4.0 BLE 蓝牙协议的数传模块。无线工作频段为 2.4GHz ISM&#xff0c;调制方式是 GFSK。模块最大发射功率为4dBm&#xff0c;接收灵度-93dBm&#xff0c…...

如何在 CentOS 8 上安装 OpenCV?

OpenCV( 开源计算机视觉库)是一个开放源代码计算机视觉库&#xff0c;支持所有主要操作系统。它可以利用多核处理的优势&#xff0c;并具有 GPU 加速功能以实现实时操作。 OpenCV 的用途非常广泛&#xff0c;包括医学图像分析&#xff0c;拼接街景图像&#xff0c;监视视频&am…...

一台主机外接两台显示器

一台主机外接两台显示器 写在最前面双屏配置软件双屏跳转 写在最前面 在使用电脑时需要运行多个程序&#xff0c;时不时就要频繁的切换&#xff0c;很麻烦 但就能用双屏显示来解决这个问题&#xff0c;用一台主机控制&#xff0c;同时外接两台显示器并显示不同画面。 参考&a…...

笔记-搭建和使用docker-registry私有镜像仓库

笔记-搭建和使用docker-registry私有镜像仓库 拉取/安装registry镜像 和 对应的ui镜像 如果有网络可以直接拉取镜像 docker pull registry docker pull hyper/docker-registry-web没有网络可以使用我导出好的离线镜像tar包, 下载地址https://wwzt.lanzoul.com/i3im1194z12d …...

爬虫框架Scrapy学习笔记-2

前言 Scrapy是一个功能强大的Python爬虫框架&#xff0c;它被广泛用于抓取和处理互联网上的数据。本文将介绍Scrapy框架的架构概览、工作流程、安装步骤以及一个示例爬虫的详细说明&#xff0c;旨在帮助初学者了解如何使用Scrapy来构建和运行自己的网络爬虫。 爬虫框架Scrapy学…...

6.1 使用scikit-learn构建模型

6.1 使用scikit-learn构建模型 6.1.1 使用sklearn转换器处理数据6.1.2 将数据集划分为训练集和测试集6.1.3 使用sklearn转换器进行数据预处理与降维1、数据预处理2、PCA降维算法 代码 scikit-learn&#xff08;简称sklearn&#xff09;库整合了多种机器学习算法&#xff0c;可以…...

React 全栈体系(十一)

第五章 React 路由 五、向路由组件传递参数数据 1. 效果 2. 代码 - 传递 params 参数 2.1 Message /* src/pages/Home/Message/index.jsx */ import React, { Component } from "react"; import {Link, Route} from react-router-dom import Detail from ./Detai…...

AI 时代的向量数据库、关系型数据库与 Serverless 技术丨TiDB Hackathon 2023 随想

TiDB Hackathon 2023 刚刚结束&#xff0c;我仔细地审阅了所有的项目。 在并未强调项目必须使用人工智能&#xff08;AI&#xff09;相关技术的情况下&#xff0c;引人注目的项目几乎一致地都使用了 AI 来构建自己的应用。 大规模语言模型&#xff08;LLM&#xff09;的问世使得…...

Vue的路由使用,Node.js下载安装及环境配置教程 (超级详细)

前言&#xff1a; 今天我们来讲解关于Vue的路由使用&#xff0c;Node.js下载安装及环境配置教程 一&#xff0c;Vue的路由使用 首先我们Vue的路由使用&#xff0c;必须要导入官方的依赖的。 BootCDN - Bootstrap 中文网开源项目免费 CDN 加速服务https://www.bootcdn.cn/ <…...

vue修改node_modules打补丁步骤和注意事项

当我们使用 npm 上的第三方依赖包&#xff0c;如果发现 bug 时&#xff0c;怎么办呢&#xff1f; 想想我们在使用第三方依赖包时如果遇到了bug&#xff0c;通常解决的方式都是绕过这个问题&#xff0c;使用其他方式解决&#xff0c;较为麻烦。或者给作者提个issue&#xff0c;然…...

CSS 响应式设计:媒体查询

文章目录 媒体查询添加断点为移动端优先设计其他断点方向&#xff1a;横屏/竖屏 媒体查询 CSS中的媒体查询是一种用于根据不同设备的屏幕尺寸和分辨率来定义样式表的方法。在CSS中&#xff0c;我们可以使用媒体查询来根据不同的设备类型和屏幕尺寸来应用不同的样式&#xff0c…...

Qt开发 - Qt基础类型

1.基础类型 因为Qt是一个C 框架, 因此C中所有的语法和数据类型在Qt中都是被支持的, 但是Qt中也定义了一些属于自己的数据类型, 下边给大家介绍一下这些基础的数类型。 QT基本数据类型定义在#include <QtGlobal> 中&#xff0c;QT基本数据类型有&#xff1a; 虽然在Qt中…...

Docker-如何获取docker官网x86、ARM、AMD等不同架构下的镜像资源

文章目录 一、概要二、资源准备三、环境准备1、环境安装2、服务器设置代理3、注册docker账号4、配置docker源 四、查找资源1、服务器设置代理2、配置拉取账号3、查找对应的镜像4、查找不同版本镜像拉取 小结 一、概要 开发过程中经常会使用到一些开源的资源&#xff0c;比如经…...

Vuex状态管理最佳实践

文章目录 单一状态树使用模块使用常量定义Mutation类型使用Actions处理异步操作使用Getters计算属性严格模式分模块管理Getter、Mutation和Action&#xff1a;注释和文档&#xff1a;Vue Devtools ✍创作者&#xff1a;全栈弄潮儿 &#x1f3e1; 个人主页&#xff1a; 全栈弄潮…...

WebToEpub:3分钟将网页小说转为EPUB电子书的终极解决方案

WebToEpub&#xff1a;3分钟将网页小说转为EPUB电子书的终极解决方案 【免费下载链接】WebToEpub A simple Chrome (and Firefox) Extension that converts Web Novels (and other web pages) into an EPUB. 项目地址: https://gitcode.com/gh_mirrors/we/WebToEpub 还在…...

不只是画图:用Design Entry CIS画原理图符号,你真的理解引脚属性吗?

不只是画图&#xff1a;用Design Entry CIS画原理图符号&#xff0c;你真的理解引脚属性吗&#xff1f; 在电子设计自动化&#xff08;EDA&#xff09;领域&#xff0c;原理图符号的创建常被视为"简单绘图"&#xff0c;但真正影响设计质量的往往是那些被忽视的细节。…...

Unity3D项目跨平台部署实战:从Windows到Linux的完整流程与避坑指南

1. 环境准备&#xff1a;搭建跨平台开发基础 跨平台部署的第一步是确保开发环境配置正确。很多开发者容易忽略这一步&#xff0c;结果在后续流程中遇到各种奇怪的问题。我在实际项目中遇到过多次因为环境不匹配导致的编译失败&#xff0c;所以特别强调环境准备的重要性。 首先需…...

48_《智能体微服务架构企业级实战教程》智能助手主应用服务之工具决策节点

前言 配套视频教程: 在 Bilibili课堂、CSDN课程、51CTO学堂 同步发售,提供:源码+部署脚本+文档。 bilibili课堂视频教程:智能体微服务架构企业级实战教程_哔哩哔哩_bilibili CSDN课程视频教程:智能体微服务架构企业级实战教程_在线视频教程-CSDN程序员研修院 51CTO学堂…...

实测Taotoken在低功耗arm7设备上的API调用延迟与稳定性表现

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 实测Taotoken在低功耗arm7设备上的API调用延迟与稳定性表现 1. 测试背景与目的 在边缘计算或资源受限的嵌入式场景中&#xff0c;…...

别再对着示波器数NOP了!用STM32的SPI+DMA驱动WS2812灯带,一个CubeMX配置就搞定

用STM32的SPIDMA高效驱动WS2812灯带&#xff1a;告别手动调时序的工程化方案 在嵌入式开发中&#xff0c;驱动WS2812灯带一直是个让人又爱又恨的挑战。这种智能RGB灯带以其简单的单线控制和丰富的色彩表现广受欢迎&#xff0c;但精确的时序要求也让不少开发者头疼不已。传统方法…...

如何使用AI大模型进行报表合并?一句话搞定复制粘贴

每个月底&#xff0c;财务小张都要做一件事&#xff1a;把1月到12月的销售明细表合成年报。12个Excel文件&#xff0c;每个文件30多列&#xff0c;字段名倒是一致&#xff0c;但数据量加起来几十万行。她的老办法是打开所有文件&#xff0c;逐个复制粘贴到一个新表里&#xff0…...

基于Agentify框架构建AI智能体:从核心原理到实战应用

1. 项目概述&#xff1a;从代码仓库到智能体构建平台最近在开源社区里&#xff0c;一个名为harindukavishka/agentify的项目引起了我的注意。乍一看&#xff0c;这只是一个GitHub上的代码仓库&#xff0c;但当你点进去&#xff0c;深入其文档和代码结构&#xff0c;你会发现它远…...

别再死记硬背了!用Python模拟LDPC和Polar码的编码过程(附代码)

Python实战&#xff1a;用可视化方法理解LDPC与Polar码的核心原理 在无线通信系统的物理层设计中&#xff0c;信道编码技术如同数据的"防弹衣"&#xff0c;保护信息在充满噪声的传输环境中安全抵达。本文将带你用Python构建两种5G核心编码方案——LDPC码和Polar码的简…...

LinkSwift:九大网盘直链下载的技术革新与优雅突围

LinkSwift&#xff1a;九大网盘直链下载的技术革新与优雅突围 【免费下载链接】Online-disk-direct-link-download-assistant 一个基于 JavaScript 的网盘文件下载地址获取工具。基于【网盘直链下载助手】修改 &#xff0c;支持 百度网盘 / 阿里云盘 / 中国移动云盘 / 天翼云盘…...