当前位置: 首页 > 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;} 

http://www.xdnf.cn/news/32815.html

相关文章:

  • Elasticsearch:使用 ES|QL 进行搜索和过滤
  • 嵌入式linux系统中内存管理的方法与实现
  • EKF公式推导
  • 工业级向量检索核心技术:IVF-PQ原理与全流程解析
  • [Android] 豆包爱学v4.5.0小学到研究生 题目Ai解析
  • 【IaaS自动化运维】Ansible与Terraform集成
  • 【仓颉 + 鸿蒙 + AI Agent】CangjieMagic框架(16):ReactExecutor
  • 【重学Android】02.Java环境配置的一些分享
  • 高精度算法(加、减、乘、除、阶乘和)​
  • QML Rectangle 组件
  • 直线轴承常规分类知多少?
  • 洛谷P1177【模板】排序:十种排序算法全解(1)
  • Keil A51汇编伪指令
  • 【机器学习】朴素贝叶斯算法:原理剖析与实战应用
  • Java学习手册:Web 应用架构概述
  • 卷积神经网络(CNN)详解
  • 【嵌入式】——Linux系统远程操作和程序编译
  • 前端面试真题集合(一)
  • Python语法系列博客 · 第9期[特殊字符] 函数参数进阶:*args、**kwargs 与参数解包技巧
  • 树莓派5-开发应用笔记
  • Java Web 之 Tomcat 100问
  • git合并分支并推送
  • 为什么浮点数会搞出Infinity和NAN两种类型?浮点数的底层原理?IEEE 754标准揭秘?
  • matlab 环形单层柱状图
  • 解锁异步JavaScript性能:从事件循环(Event Loop)到Promise与Async/Await的最佳实践
  • 电商平台计算订单成交额是不是要去除退款退货的
  • CMFA在自动驾驶中的应用案例
  • 多线程使用——线程安全、线程同步
  • 【Canvas与旗帜】标准英国米字旗
  • 实现批量图片文字识别(python+flask+EasyOCR)