news 2026/2/19 23:08:18

打卡信奥刷题(2659)用C++实现信奥题 P2846 [USACO08NOV] Light Switching G

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
打卡信奥刷题(2659)用C++实现信奥题 P2846 [USACO08NOV] Light Switching G

P2846 [USACO08NOV] Light Switching G

题目描述

农夫约翰试图让奶牛玩智力玩具来保持它们的敏锐。谷仓里的灯是较大的玩具之一。N(2≤N≤105)N (2 \le N \le 10^5)N(2N105)个牛栏编号为1…N1 \ldots N1N,每个牛栏上面都有一盏灯。起初所有的灯都关着。

共有MMM次操作,分为两种。

  1. 指定一个区间[Si,Ei][S_i,E_i][Si,Ei],然后改变编号在这个区间内的灯的状态(把开着的灯关上,关着的灯打开);
  2. 指定一个区间[Si,Ei][S_i,E_i][Si,Ei],要求你输出这个区间内有多少盏灯是打开的。

输入格式

111行: 用空格隔开的两个整数NNNMMMNNN是灯数。

2…M+12\ldots M+12M+1行: 每行表示一个操作, 有三个用空格分开的整数: 指令号,SiS_iSiEiE_iEi

若指令号为000,则表示改变[Si,Ei][S_i,E_i][Si,Ei]区间内的灯的状态(把开着的灯关上,关着的灯打开)。

若指令号为111,则表示输出[Si,Ei][S_i,E_i][Si,Ei]这个区间内有多少盏灯是打开的。

输出格式

输入输出样例 #1

输入 #1

4 5 0 1 2 0 2 4 1 2 3 0 2 4 1 1 4

输出 #1

1 2

说明/提示

数据点编号NNNMMM
1∼21\sim 212≤100\le 100100≤100\le 100100
3∼43\sim 434≤1000\le 10001000≤1000\le 10001000
5∼65\sim 656≤10000\le 1000010000≤10000\le 1000010000
7∼87\sim 878≤105\le 10^5105≤100\le 100100
9∼109\sim 10910≤100\le 100100≤105\le 10^5105
11∼1211\sim 121112≤1000\le 10001000≤105\le 10^5105
13∼1413\sim 141314≤105\le 10^5105≤1000\le 10001000
15∼1615\sim 161516≤10000\le 1000010000≤10000\le 1000010000
17∼1817\sim 181718≤10\le 1010≤105\le 10^5105
19∼2019\sim 201920≤2000\le 20002000≤106\le 10^6106

C++实现

#include<bits/stdc++.h>usingnamespacestd;intn,m,zt[100020],a,b;intmain(){scanf("%d%d",&n,&m);for(inti=1;i<=m;i++){intpd;scanf("%d%d%d",&pd,&a,&b);if(pd==1){intans=0;for(inti=a;i<=b;i++){if(zt[i])//灯开着就计入答案{ans++;}}printf("%d\n",ans);}else{for(inti=a;i<=b;i++){if(zt[i])//如果灯开着,关上{zt[i]=0;}else//如果灯关着,打开{zt[i]=1;}}}}return0;}

后续

接下来我会不断用C++来实现信奥比赛中的算法题、GESP考级编程题实现、白名单赛事考题实现,记录日常的编程生活、比赛心得,感兴趣的请关注,我后续将继续分享相关内容

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/2/15 1:33:19

Z-Image-Turbo与博客平台整合:WordPress插件开发设想

Z-Image-Turbo与博客平台整合&#xff1a;WordPress插件开发设想 引言&#xff1a;AI图像生成如何重塑内容创作流程 随着大模型技术的普及&#xff0c;AI图像生成正从实验性工具演变为内容创作者的核心生产力组件。阿里通义推出的 Z-Image-Turbo WebUI 凭借其高效的推理速度&am…

作者头像 李华
网站建设 2026/2/8 12:38:47

从OpenStreetMap到高德:跨平台POI数据对齐实践

从OpenStreetMap到高德&#xff1a;跨平台POI数据对齐实践 为什么我们需要跨平台POI对齐 作为地图数据供应商&#xff0c;你是否遇到过这样的问题&#xff1a;开源地图中的"KFC"需要与商业地图中的"肯德基"建立关联&#xff1f;这类POI&#xff08;兴趣点&…

作者头像 李华
网站建设 2026/2/18 1:41:39

AI助力IDEA下载安装:智能推荐最佳版本与配置

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 开发一个IntelliJ IDEA智能推荐系统&#xff0c;根据用户输入的系统配置&#xff08;CPU/内存/操作系统&#xff09;、开发语言&#xff08;Java/Kotlin/Python等&#xff09;和项…

作者头像 李华
网站建设 2026/2/19 14:22:18

Spring AI vs 传统开发:Alibaba技术栈效率对比

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 构建一个性能对比测试项目&#xff0c;要求&#xff1a;1.实现相同的业务功能&#xff08;如用户注册登录系统&#xff09;分别用传统方式和Spring AI方式 2.记录开发时间、代码行…

作者头像 李华
网站建设 2026/2/16 12:55:30

传统下载 vs AI生成:REFUS下载工具开发效率对比

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 创建一个性能优化的REFUS下载工具对比测试程序。要求&#xff1a;1.实现传统手动编写的下载模块 2.实现AI生成的下载模块 3.设计自动化测试用例 4.比较下载速度、稳定性和资源占用…

作者头像 李华
网站建设 2026/2/19 6:20:12

比手动排查快10倍:AI自动化解决Gradle问题

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 创建一个Gradle问题效率对比工具&#xff0c;能够&#xff1a;1. 记录手动解决Unable to find method错误的时间 2. 使用AI自动分析相同问题 3. 生成时间对比报告 4. 提供优化建议…

作者头像 李华