news 2026/2/5 8:55:23

P14971 『GTOI - 2B』DDoS题解

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
P14971 『GTOI - 2B』DDoS题解

P14971 『GTOI - 2B』DDoS

题目描述

现在有n nn个人提交代码给洛谷,其中第i ii个人提交代码的时间是第l i l_ili秒至第r i r_iri(包括第l i , r i l_i,r_ili,ri秒)

小 H 可以进行若干次操作,每次操作选择两个正整数x , y x,yx,y满足x ≤ y x\le yxy,用y − x + 1 y-x+1yx+1的代价在区间[ x , y ] [x,y][x,y]所对应的时间,即第x xx秒到第y yy秒内(包括第x , y x,yx,y秒)向洛谷发起 DDoS 攻击。小 H 可使用的总代价为m mm

小 H 希望所有的n nn个人在提交代码时都全程受到 DDoS 攻击。

我们认为第i ii个人提交代码时全程受到 DDoS 攻击,当且仅当对于∀ j ∈ [ l i , r i ] \forall j\in[l_i,r_i]j[li,ri],第j jj秒有 DDoS 攻击。

由于小 H 讨厌不连续的攻击,所以他问你,他至少要进行几次操作,才能使得这n nn个人提交代码时都全程受到 DDoS 攻击。

如果无论如何都不能使得这n nn个人提交代码时都全程受到 DDoS 攻击,输出− 1 -11

输入格式

第一行,两个正整数n , m n,mn,m

接下来n nn行,每行两个正整数l i , r i l_i,r_ili,ri

输出格式

一个整数,表示最小的操作次数,无解输出-1 \text{-1}-1

输入输出样例 #1

输入 #1

5 12 2 4 11 12 6 8 1 3 10 13

输出 #1

2

输入输出样例 #2

输入 #2

5 12 1 3 6 9 4 5 2 4 10 12

输出 #2

1

输入输出样例 #3

输入 #3

2 14 1 10 2 15

输出 #3

-1

说明/提示

【数据范围】

本题采用捆绑测试。

对于100 % 100\%100%的数据,保证1 ≤ n ≤ 10 6 , 1 ≤ m , l i , r i ≤ 10 9 1 \le n \le 10^6,1 \le m,l_i,r_i \le 10^91n106,1m,li,ri109

Subtask \text{Subtask}Subtaskn nnm , l i , r i m,l_i,r_im,li,ri分值
1 11≤ 10 \le1010≤ 10 6 \le10^610620 2020
2 22≤ 10 5 \le10^5105≤ 10 6 \le10^610630 3030
3 33≤ 10 6 \le10^6106≤ 10 9 \le10^910950 5050

思路

直接暴力。

代码见下

#include<bits/stdc++.h>usingnamespacestd;longlongn,m,dl=1,db=0,op=0,b[1000006],de=0,fk=0;structone{longlongl,r;}a[1000006];boolcmp(one a1,one b1){returna1.l<b1.l;}map<longlong,longlong>mp;intmain(){cin>>n>>m;for(inti=1;i<=n;i++){cin>>a[i].l>>a[i].r;}sort(a+1,a+n+1,cmp);for(inti=1;i<=n;i++){if(db<=a[i].l-2){op+=(db-dl+1);if(i!=1)b[++de]=(a[i].l-db-1);dl=a[i].l;db=a[i].r;fk++;}else{db=max(db,a[i].r);}}op+=(db-dl+1);//fk++;if(m<=op-1){cout<<-1<<endl;}else{sort(b+1,b+de+1);for(inti=1;i<=de;i++){if(op+b[i]<=m){op+=b[i];fk--;}// else{// break;// }}cout<<fk<<endl;}return0;}
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/2/3 21:45:11

提升响应速度:u8g2刷新策略深度剖析

以下是对您提供的博文内容进行 深度润色与结构重构后的技术文章 。整体遵循您的全部要求&#xff1a; ✅ 彻底去除AI痕迹&#xff0c;语言自然如资深嵌入式工程师面对面分享&#xff1b; ✅ 摒弃模板化标题与“总-分-总”结构&#xff0c;以真实开发痛点为起点&#xff0c;…

作者头像 李华
网站建设 2026/2/5 16:34:10

WAN2.2文生视频新体验:中文提示词输入,轻松创作高质量内容

WAN2.2文生视频新体验&#xff1a;中文提示词输入&#xff0c;轻松创作高质量内容 1. 为什么这次升级值得你立刻试试&#xff1f; 你有没有过这样的经历&#xff1a;想用AI生成一段短视频&#xff0c;却卡在第一步——英文提示词写得磕磕绊绊&#xff0c;反复调试“a cinemat…

作者头像 李华
网站建设 2026/2/5 20:06:26

麦橘超然步数设置建议,平衡速度与质量

麦橘超然步数设置建议&#xff0c;平衡速度与质量 在使用“麦橘超然”&#xff08;MajicFLUX&#xff09;进行AI图像生成时&#xff0c;你是否遇到过这样的困惑&#xff1a; 输入了精心打磨的提示词&#xff0c;却生成出细节模糊、结构松散的画面&#xff1f; 或者明明设备性能…

作者头像 李华
网站建设 2026/2/4 6:08:16

跨语言访谈整理助手,中英日韩自动切换识别

跨语言访谈整理助手&#xff0c;中英日韩自动切换识别 在做跨国市场调研、国际客户访谈或跨文化内容创作时&#xff0c;你是否经历过这些场景&#xff1a; 一段30分钟的日语访谈录音&#xff0c;手动听写耗时4小时&#xff0c;还常漏掉语气词和情绪变化中英混杂的会议录音里&…

作者头像 李华
网站建设 2026/2/4 6:08:32

鹰眼目标检测实战案例:YOLOv8多场景物体识别详细步骤

鹰眼目标检测实战案例&#xff1a;YOLOv8多场景物体识别详细步骤 1. 什么是“鹰眼”&#xff1f;——从概念到落地的直观理解 你有没有想过&#xff0c;如果给一台普通电脑装上一双“眼睛”&#xff0c;它能不能像人一样&#xff0c;一眼扫过去就认出照片里有几辆车、几个人、…

作者头像 李华
网站建设 2026/2/3 8:40:33

多核MCU下Keil调试JTAG链路连接策略完整指南

以下是对您提供的技术博文进行 深度润色与结构重构后的专业级技术文章 。全文已彻底去除AI生成痕迹&#xff0c;采用真实嵌入式工程师口吻写作&#xff0c;逻辑层层递进、语言精炼有力、案例具体可感&#xff0c;并融合大量一线调试经验与底层原理洞察。所有术语、寄存器地址…

作者头像 李华