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

Codeforces Educational Round 177 Div. 2 【B题,C待补

B 二分

题意

样例

5 3 10
3 4 2 1 512

 找最右边的L下标即可

思路

二分最靠右的L端点,R端点取最右端(n*k处),找到后,答案就是L的位置(pos),(因为如果pos满足,则pos左边的所有下标都满足

代码 

const int N = 2e5 + 10;LL n,m,k;
LL x;
LL a[N],suf[N];bool check(LL mid)
{LL t = (n * k - mid + 1) / n * suf[1];t += suf[n + 1 - (n * k - mid + 1) % n];return t >= x;
}void solve() 
{	memset(a,0,sizeof a);memset(suf,0,sizeof suf);cin >> n >> k >> x;for (int i = 1;i <= n;i ++)	 cin >> a[i];for (int i = n;i >= 1;i --) suf[i] = suf[i + 1] + a[i];if (suf[1] * k < x) {cout << 0 << endl;return;}if (a[n] >= x){cout << n * k << endl;return;}LL l = 0,r = n * k + 1;while(l + 1 != r){LL mid = l + r >> 1;if (check(mid)) l = mid;else r = mid;}if (check(l)) cout << l << endl;else cout << r << endl;} 

相关文章:

  • Unity:获取组件对象(GetComponent<T>())
  • MinnowBoard MAX单板UEFI BIOS代码编译教程
  • Spring 学习笔记之 @Transactional详解
  • 4N60-ASEMI开关电源与适配器专用4N60
  • 运筹学之遗传算法
  • Rust网络编程实战:全面掌握reqwest库的高级用法
  • QT+Cmake+mingw32-make编译64位的zlib-1.3.1源码成功过程
  • 深度学习--卷积神经网络CNN原理
  • 功能性高斯泼溅扩散——DiffGS: Functional Gaussian Splatting Diffusion
  • yolov8的数据处理lableimg的安装以及使用
  • 【更新完毕】2025华中杯C题数学建模网络挑战赛思路代码文章教学数学建模思路:就业状态分析与预测
  • Python 赋能区块链教育:打造去中心化学习平台
  • 一些C语言常用函数(后续会继续更新)
  • 力扣刷题Day 21:两数之和(1)
  • day28 学习笔记
  • 面试题之如何设计一个秒杀系统?
  • LRU Java实现
  • 移动自动化测试-appium
  • jQuery — 动画和事件
  • kimi+deepseek制作PPT
  • 中国与柬埔寨签署产供链经济合作谅解备忘录
  • 今年一季度,上海对东盟进出口总值同比增长7.1%
  • 内部敏感文件遭万人共享,特朗普政府又曝安全漏洞
  • 大尺度色情语聊、撮合卖淫嫖娼!一些交友软件暗藏“桃色陷阱”
  • 为溶血性疾病治疗提供新靶点,专家团队在《细胞》发文
  • 马克龙:美乌欧在法磋商乌克兰问题“积极且有建设性”