Codeforces Round 924 (Div. 2) 题解 A~D | JorbanS

A - Recovering a Small String

string solve() {cin >> n >> m;if (n < m) swap(n, m);if (n & 1 && m & 1) return no;if (m & 1 && n == m << 1) return no;return yes;
}

B - Make Equal

由于排列 1 ∼ n 1\sim n 1n 均不一样,故先对原数组排序并去重

所给数组范围明显大于 n n n,容易想到用区间长度为 n n n 的去匹配数组 a a a,故而用二分确定端点,故只要对每个左端点 l l l,二分出 r r r,取最大值即可

int solve() {cin >> n;set<int> s;for (int i = 0; i < n; i ++) {int x; cin >> x;s.insert(x);}vector<int> a;for (auto i : s) a.emplace_back(i);int res = 0;for (int i = 0; i < a.size(); i ++) {int t = upper_bound(a.begin() + i, a.end(), a[i] + n - 1) - a.begin() - i;res = max(res, t);}return res;
}

C - Make Equal Again

易得 2 k − 2 ∣ n − x 2k-2|n-x 2k2∣nx 2 k − 2 ∣ n + x − 2 2k-2|n+x-2 2k2∣n+x2,直接暴力求约数即可

set<int> s;void cal(int n) {if (n & 1) return;n >>= 1;for (int i = 1; i <= n / i; i ++)if (n % i == 0) {int a = i, b = n / i;if (a + 1 >= x) s.insert(a);if (b + 1 >= x) s.insert(b);}
}int solve() {cin >> n >> x;s.clear();cal(n - x);cal(n + x - 2);return s.size();
}

D - Divisible Pairs

结果具备单峰性,三分即可,赛时漏了个 b b b,小丑了(

ll cal(int t) {ll res = -(ll)(t - 1) * x;for (int i = 0; i < n; i ++) {int p = a[i] / t, q = (a[i] + t - 1) / t;int nq = a[i] % t, np = t - nq;res += (ll)p * np * (a[i] - p) / 2 * b;res += (ll)q * nq * (a[i] - q) / 2 * b;}return res;
}ll solve() {cin >> n >> b >> x;for (int i = 0; i < n; i ++) cin >> a[i];int l = 1, r = 2e5;while (l + 2 < r) {int L = (l * 2 + r) / 3;int R = (l + r * 2) / 3;if (cal(L) >= cal(R)) r = R;else l = L;}return max(cal(l), max(cal(r), cal(l + 1)));
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/687739.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

scoped实现原理

scoped实现原理 为组件实例生成一个唯一标识&#xff0c;给组件中的每个标签对应的dom元素添加一个标签属性&#xff0c;data-v-xxxx给<style scoped>中的每个选择器的最后一个选择器添加一个属性选择器&#xff0c;原选择器[data-v-xxxx]&#xff0c;如&#xff1a;原选…

Typora的下载安装(文末有安装包,2024亲测可用)

一、安装步骤 1、首先下载安装包&#xff0c;解压到你的目录下面 2、进入到解压后的文件夹下面&#xff0c;看到如下的内容&#xff1a; 3、双击exe文件开始安装&#xff0c;选择安装目录&#xff0c;并记下安装地址&#xff01;&#xff01;&#xff01; 选择创建桌面快捷方…

2024年腾讯云4核8G12M轻量应用服务器测评,2月更新

4核8G服务器支持多少人同时在线访问&#xff1f;阿腾云的4核8G服务器可以支持20个访客同时访问&#xff0c;关于4核8G服务器承载量并发数qps计算测评&#xff0c;云服务器上运行程序效率不同支持人数在线人数不同&#xff0c;公网带宽也是影响4核8G服务器并发数的一大因素&…

树和二叉树的基本知识

一、树的概念及结构 1.树的概念 树是一种 非线性 的数据结构&#xff0c;它是由 n &#xff08; n>0 &#xff09;个有限结点组成一个具有层次关系的集合。 把它叫做树是因 为它看起来像一棵倒挂的树&#xff0c;也就是说它是根朝上&#xff0c;而叶朝下的 。 有一个 特殊…

2024春节过后,抖店爆款出单类目产品,应季产品需要提前布局

我是王路飞。 之前给你们强调过&#xff0c;“应季品”是最容易爆单的产品类型&#xff0c;没有之一。 那么在2024年春节刚过的现在&#xff0c;当别人还沉浸在过年的氛围中时&#xff0c;有心的商家早就开始布局未来三个月的爆款类目和产品了。 今天的内容&#xff0c;就给…

软件实例分享,乒乓球俱乐部会员系统管理软件教程

软件实例分享&#xff0c;乒乓球俱乐部会员系统管理软件教程 一、前言 以下软件程序教程以 佳易王乒乓球馆计时计费软件V17.0为例说明 软件文件下载可以点击最下方官网卡片——软件下载——试用版软件下载 多种计费方式&#xff0c;可以按单价&#xff0c;也可以按时间段 可…

Eureka和Nacos

Spring Cloud提供了多种服务注册和发现的解决方案&#xff0c;Eureka和Nacos是其中两个非常流行的选项。下面&#xff0c;我们将深入探索这两种注册中心的工作原理、配置和使用方法。 Eureka Eureka是Netflix开发的服务发现框架&#xff0c;它包括两个部分&#xff1a;Eureka…

2942. 查找包含给定字符的单词【简单】

2942. 查找包含给定字符的单词【简单】 题目描述&#xff1a; 给你一个下标从 0 开始的字符串数组 words 和一个字符 x 。 请你返回一个 下标数组 &#xff0c;表示下标在数组中对应的单词包含字符 x 。 注意&#xff1a;返回的数组可以是 任意 顺序 示例 1&#xff1a; 输…

vue3 Element Plus 基于webstorm练习

提要 vue是前端框架&#xff0c;Elemen是组件库。前端框架和组件库的区别与联系 nodejs 脚本语言需要一个解析器才能运行&#xff0c;JavaScript是脚本语言&#xff0c;在不同的位置有不一样的解析器&#xff0c;如写入html的js语言&#xff0c;浏览器是它的解析器角色。而对…

python in Vscode

背景 对于后端的语言选择&#xff1a; python&#xff0c;java&#xff0c;JavaScript备选。 选择Python 原因&#xff1a;可能是非IT专业的人中&#xff0c;会Python的人比较多。 目的 之前使用的IDE是VSCODE&#xff0c;在WSL的环境下使用。现在需要在在WSL的VSCODE下使…

【Java程序员面试专栏 Java领域】Java Spring框架 核心面试指引

关于Java Spring框架部分的核心知识进行一网打尽,主要包括Spring框架中的重点概念IOC和AOP,以及SpringBoot的自动装配机制,SpringMVC的核心执行流程,通过一篇文章串联面试重点,并且帮助加强日常基础知识的理解,全局思维导图如下所示 基础概念 Spring框架的基本概念,S…

浅谈语义分割、图像分类与目标检测中的TP、TN、FP、FN

语义分割 TP&#xff1a;正确地预测出了正类&#xff0c;即原本是正类&#xff0c;识别的也是正类 TN&#xff1a;正确地预测出了负类&#xff0c;即原本是负类&#xff0c;识别的也是负类 FP&#xff1a;错误地预测为了正类&#xff0c;即原本是负类&#xff0c;识别的是正类…

秒懂百科,C++如此简单丨第二十一天:栈和队列

目录 前言 Everyday English 栈&#xff08;Stack&#xff09; 图文解释 实现添加删除元素 实现查看清空栈 完整代码 运行示例 栈的选择题 队列&#xff08;Queue&#xff09; 图文解释 队列的基本用法 完整代码 运行结果 队列的好处 结尾 前言 今天我们将…

java 培训班预定管理系统Myeclipse开发mysql数据库web结构jsp编程servlet计算机网页项目

一、源码特点 java 培训班预定管理系统是一套完善的java web信息管理系统 采用serlvetdaobean&#xff0c;对理解JSP java编程开发语言有帮助&#xff0c;系统具有完整的源代码和数据库&#xff0c;系统主要采用B/S模式开发。开发环境为TOMCAT7.0,Myeclipse8.5开发&#xf…

139.单词拆分【leetcode】/动态规划

139.单词拆分 给你一个字符串 s 和一个字符串列表 wordDict 作为字典。如果可以利用字典中出现的一个或多个单词拼接出 s 则返回 true。 注意&#xff1a;不要求字典中出现的单词全部都使用&#xff0c;并且字典中的单词可以重复使用。 示例 1&#xff1a; 输入: s “leetco…

【SpringBoot3】从重构HelloWorld看Spring的作用

在我们学习一门新技术的时候,总是先运行出一个基本的程序来输出“Hello World”,如果成功了, 说明我们的开发环境基本就绪了,我们也像婴儿走路一样,能走第一步了。接下来我们就逐步改造一个最基本的HelloWorld来一步步分析Spring到底帮助我们做 了什么。 目录 第一步:输…

CCF编程能力等级认证GESP—C++4级—20231209

CCF编程能力等级认证GESP—C4级—20231209 单选题&#xff08;每题 2 分&#xff0c;共 30 分&#xff09;判断题&#xff08;每题 2 分&#xff0c;共 20 分&#xff09;编程题 (每题 25 分&#xff0c;共 50 分)小杨的字典田忌赛马 参考答案单选题判断题编程题1编程题2 单选题…

近几年计算机毕设之论文参考文献(Java参考文献、MySQL参考文献、jsp参考文献、Python参考文献、微信小程序参考文献、外文参考文献)(10个一组)

目录 1、Java参考文献 2、JavaWeb参考文献 3、MySQL参考文献 4、Python参考文献 5、微信小程序参考文献 6、Jsp参考文献 7、SpringBoot参考文献 8、vue参考文献 9.ASP.NET参考文献 10、外文参考文献 1、Java参考文献 [1] 丁玉青;孙逸飞;朱敏.基于JAVA的共享蓝牙耳机小…

智能扭矩系统——SunTorque

随着工业自动化的不断发展&#xff0c;智能扭矩系统作为一种新型的扭矩控制技术&#xff0c;逐渐受到广泛关注。智能扭矩系统是一种基于传感器技术和计算机控制的扭矩管理系统&#xff0c;它能够实时监测和调整设备的扭矩输出&#xff0c;以确保生产过程中的稳定性和安全性。 搭…

国产计算机的种类和应用

国产计算机的种类和应用 国产计算机的种类繁多&#xff0c;根据不同的应用场景和需求&#xff0c;可以分为个人计算机、服务器、工业控制计算机、嵌入式计算机等。 个人计算机是国产计算机中最常见的类型&#xff0c;包括台式机、笔记本电脑、平板电脑等。这些计算机广泛应用于…