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

C. Light Switches

文章目录

  • C. Light Switches
    • 题意:
    • 解题思路:
    • 解题代码:

C. Light Switches

原题链接

题意:

房间的灯最初均为关闭状态,安装芯片后,它会每隔k分钟改变一次房间的灯光状态,即会打开灯光k分钟,关闭k分钟再打开,依次重复。
有n个房间,在不同时间安装芯片,最早什么时间可以使这些灯都在打开状态,如果不存在所有房间灯都打开的时刻·,则输出-1.

解题思路:

1.将所有时刻都排序,取最大时刻的亮灯区间
2.依次与数组中别的时刻的亮灯区间取交集
3.取交集时,我们应先将此时刻变换到接近区间的值,然后利用交集更新l,r
4.如果最终交际存在即l<r,则输出最大时刻,否则输出-1

解题代码:

#include <bits/stdc++.h>
#define int long long
#define IOS ios::sync_with_stdio(false);cin.tie(0);cout.tie(0); 
#define endl '\n'
using namespace std;void solve() 
{int n,k;cin>>n>>k;int a[n];for(int i=0;i<n;i++){cin>>a[i];}sort(a,a+n);int l=a[n-1],r=a[n-1]+k-1;for(int i=0;i<n-1;i++){a[i]=((l-a[i])/(2*k))*(2*k)+a[i];if(a[i]+k<l)a[i]+=2*k;l=max(l,a[i]);r=min(r,a[i]+k-1);}if(l>r){cout<<"-1\n";return;}cout<<l<<endl;
}signed main() {IOSint T = 1;cin >> T;while (T--){solve();}return 0;
}
http://www.lryc.cn/news/415991.html

相关文章:

  • LabVIEW机器人神经网络运动控制系统
  • Qt WebEngine播放DRM音视频
  • 渗透小游戏,各个关卡的渗透实例
  • SpringBoot集成阿里百炼大模型(初始demo) 原子的学习日记Day01
  • 高级java每日一道面试题-2024年8月06日-web篇-cookie,session,token有什么区别?
  • Python 图文:小白也能轻松生成精美 PDF 报告!
  • AQS的ReentrantLock源码
  • CSP-J 模拟题2
  • 途牛养车省养车平台源码 买卖新车租车二手车维修装潢共享O2O程序源码
  • 开发中遇到的gzuncompress,DomDocument等几个小问题以及一次Php上线碰到的502问题及php异常追踪
  • 【Material-UI】Button 组件中的基本按钮详解
  • 人工智能自动驾驶三维车道线检测—PersFormer模型代码详解
  • LangChain +Streamlit+ Llama :将对话式人工智能引入您的本地设备成为可能(上篇)
  • sql注入部分总结和复现
  • 开源企业级后台管理的快速启动引擎:Ballcat
  • FashionAI比赛-服饰属性标签识别比赛赛后总结(来自 Top14 Team)
  • C语言 | Leetcode C语言题解之第319题灯泡开关
  • 【第十届泰迪杯数据挖掘挑战赛A题害虫识别】-农田害虫检测识别-高精度完整更新
  • 【Linux】—— Linux进程状态(R、S、D、T、Z、X)
  • 重生之我在NestJS中使用EventStream
  • 自动化工具Selenium IDE基本使用——脚本录制
  • 【第十一天】进程调度算法,进程间通信方式,进程同步和互斥
  • Python的lambda函数
  • java9-泛型
  • zotero安装与使用
  • Elasticsearch未授权访问漏洞
  • 【FPGA】module中CLOCK RESET iCall oDone的含义
  • OpenGL实现3D游戏编程【连载2】——了解并创建3D空间模型
  • Java-文件操作和IO
  • AI智能化赋能电商经济,守护消费净土,基于轻量级YOLOv8n开发构建公共生活景下的超大规模500余种商品商标logo智能化检测识别分析系统