题意 :

  • 有2k−12k-12k−1行,且1-k行递增,k+1行-2k-1行递减,发大于等于x个表情后会被封号,问最多发出多少行,发生“超出”行为的那行也累加答案中

思路 :

  • 范围太大了,只能用二分来做
  • 分前半段和后半段来考虑,二分时边界取大一点
  • 发现后半段如果第k+1行看作第一行,那么第i行的表情数就是k-mid
  • ans(最终结果)更新(当前mid如果合法就更新)时注意和边界判断
  • 后半段二分的时候,L也是从1算起,为了扩大二分范围,L初始化为0
  • setprecision在头文件iomanip
#include <iostream>
#include <iomanip>using namespace std;
using ll = long long;int main()
{cin.tie(nullptr) -> sync_with_stdio(false);cout << fixed << setprecision(20);int _ = 1;cin >> _;while (_ -- ){ll k, x;cin >> k >> x;ll half = (1 + k) * k / 2;ll ans = 1;if (x <= half){ll L = 0, R = k + 1;while (L < R){ll mid = L + R >> 1;ll now = (1 + mid) * mid / 2;if (now < x){ans = min(2 * k - 1, mid + 1);L = mid + 1;}elseR = mid;}}else{ans = k;ll L = 0, R = k + 1;while (L < R){ll mid = L + R >> 1;ll now = (k - 1 + k - mid) * mid / 2 + half;if (now < x){ans = min(2 * k - 1, k + mid + 1);      // 不要忘了加上kL = mid + 1;}elseR = mid;}}cout << ans << endl;}
}

Chat Ban 二分,等差数列(1300)相关推荐

  1. CF1612C Chat Ban

    cf1612C Chat Ban 输入k和x,求出你能过发送信息的行数 可以分开3种情况去讨论,如何根据求根公式去求 #include<bits/stdc++.h> using names ...

  2. Educational Codeforces Round 117 (Rated for Div. 2)

    A. Distance B. Special Permutation C. Chat Ban D.X-Magic Pair E. Messages F:没看F,好难的样子 G. Max Sum Arr ...

  3. Educational Codeforces Round 117 (Rated for Div. 2)题解(A~D)

    Educational Codeforces Round 117 (Rated for Div. 2) 今天这场没打,赛后从九点半到十一点把前面四个题目给补了一下,E题明天有时间看看能不能弄出来. A ...

  4. python读取json文件,大批量写入mongo

    1.需求:现在要求将服务器上523GB的json文件,导入到mongo库中,由于mongoimport 速度在25MB/s, 现在用脚本多进程将数据读取,在写入mongo中. 2.源码: # -*- ...

  5. LeetCode-数据结构

    文章目录 应做未做 未弄懂 经典题+易错题 一.长见识的方法 二.杂七杂八积累 三.面试常考题目索引 java刷题常用 树 数组 摩尔投票算法 堆 数据流的中位数 排序 四.基础知识总结 4.x 数组 ...

  6. 蓝桥杯校内选拔赛(河南农业大学)

    这里写目录标题 蓝桥杯介绍 前言 A通辽 B仿生机器人 C加减乘除 D霹雳数 E扫雷 F项目招标 G一步两步 H短板 蓝桥杯介绍 蓝桥杯全国软件和信息技术专业人才大赛[1]是由工业和信息化部人才交流中 ...

  7. AcWing120防线 经典题二分+前缀和+等差数列

    达达学习数学竞赛的时候受尽了同仁们的鄙视,终于有一天-受尽屈辱的达达黑化成为了黑暗英雄怪兽达达. 就如同中二漫画的情节一样,怪兽达达打算毁掉这个世界. 数学竞赛界的精英 lqr 打算阻止怪兽达达的阴谋 ...

  8. LeetCode 1300. 转变数组后最接近目标值的数组和(二分查找)

    1. 题目 给你一个整数数组 arr 和一个目标值 target ,请你返回一个整数 value , 使得将数组中所有大于 value 的值变成 value 后,数组的和 最接近 target (最接 ...

  9. LeetCode:数组(排列组合,二分查找I,二分查找II)

    1,排列组合 38,剑指Offer:字符串的排列 题目:输入一个字符串,打印出该字符串中字符的所有排列.你可以以任意顺序返回这个字符串数组,但里面不能有重复元素. class Solution {Li ...

最新文章

  1. 浏览器安全检查己通过_百度主动推送三项合一功能
  2. linux 脚本案例,30个关于Shell脚本的经典案例(上)
  3. memcpy 头文件_C|memcpy()和memmove()的比较及实现
  4. Flutter 2 源码阅读
  5. megacli通过盘符定位物理盘_柴少鹏的官方网站
  6. 磁盘里竟然还有这个东西!多亏这个1.5M大小的神器工具发现了它
  7. SpringMVC的工作流程
  8. 1-第一个pyqt5程序
  9. 初窥Linux 之 我最常用的20条命令
  10. 68 SD配置-发票凭证配置-定义出具发票类型
  11. 如何实现共享软件网络授权认证,包括注册新用户、登录、修改密码等操作
  12. ProFile配置节属serializeAs
  13. 【转】NGUI创建UIRoot后报NullReferenceException的解决办法
  14. JavaScript控制类名(className属性)
  15. python 动态加载代码_python 动态网页爬取?(不是加载更多页的动态网页哟)?...
  16. 推荐几款大家常使用的 SSH 客户端工具
  17. 模拟电视原理(笔记)
  18. 特征值与特征向量及其应用
  19. 【方差分析】之matlab求解
  20. php之RSA加密解密

热门文章

  1. 【PP操作手册】运行MRP产生计划订单
  2. 【转】MB51搜索字段的设置
  3. IPO与上市的关系?
  4. ATP检查的一些TIPS
  5. POPUP_TO_CONFIRM_STEP
  6. ALV列、行、单元格颜色设置
  7. 通过BI专题场景,深度剖析制造行业如何提高设备利用率?
  8. 长沙县这一年:战在新高地,筑牢新高台,攀向新高峰
  9. 广告植入、电商导流……“变味”的线上演唱会
  10. 从双十一强化体验认知,看苏宁的“自增强回路”增长飞轮