山东大学考研机试题——整数序列
题目描述
传送门——AcWing 3717. 整数序列 - AcWing
很多整数可以由一段连续的正整数序列(至少两个数)相加而成,比如 25=3+4+5+6+7=12+1325=3+4+5+6+7=12+13。
输入一个整数 N,输出 N 的全部正整数序列,如果没有则输出 NONE
。
输入格式
一个整数 N。
输出格式
-
每行输出一个满足条件的整数序列。
-
序列内部元素从小到大排序。
-
优先输出首项更小的序列。
数据范围
2 ≤ N ≤ 107
输入样例:
25
输出样例:
3 4 5 6 7 12 13
思路及代码
二分查找
从 1 ~ n / 2 遍历 i,通过二分查找以 i 开头时的答案。
#include<bits/stdc++.h>
using namespace std;
typedef long long LL;
const int N = 1e7+7;
int n;
int main(){std::ios::sync_with_stdio(false);std::cin.tie(0);std::cout.tie(0);cin>>n;LL k = n / 2;bool tag = false;for(LL i=1;i<=k;i++){// high = k + 1作为最大值是因为当最大值大于 n/2时,由于要求是一组连续的数,所以此时的序列至多有2个数LL low = i, high = k + 1;while(low < high){LL mid = low + high + 1 >> 1;if((mid - i + 1)*(i + mid) <= 2*n){low = mid;}else{high = mid -1;}}if((low - i + 1)*(i + low) == 2*n){tag = true;for(int j=i;j<=low;j++){cout<<j<<" ";}cout<<"\n";}}if(tag == false){cout<<"NONE";}return 0;
}
数学公式
该题本质考察的是一组连续数的和,则令这组连续数的开头是a,共k个数,那么这组数的和通过求和公式可得为 (a + a + k - 1) * k / 2。而我们需要求得是 a 和 k,当这两个未知数确定后,一组数便确定了。
因此考虑, (a + a + k - 1) * k / 2 = n,即 (2a + k - 1) * k = 2n,可知,由 a 和 k 组成的 y = (2a + k - 1) 和 x = k 两个公式是 2n 的因子。既然如此,我们可以去求 2n 的因子,考察满足条件的两个因子 x和y,由 x和y 可得到 a 和 k。
#include<bits/stdc++.h>
using namespace std;
int main() {std::ios::sync_with_stdio(false);std::cin.tie(0);std::cout.tie(0);int n;cin >> n;n *= 2;int cnt = 0;// 题目要求优先输出首项更小的序列,即 (2a + k - 1) * k 中的 a 更小。由 (2a + k - 1) * k = 2n 可知 k 越大 a越小,即因子 x 越大,a越小,所以这里 x 从大到小遍历 for (int x = sqrt(n); x > 1; x--) {if (n % x == 0) {int y = n / x;int t = y - (x - 1);// t = 2a,因此 t 必须是偶数if (t % 2 == 0) {cnt++;int a = t / 2;for (int i = a; i < a + x; i++) {cout << i << " ";}cout << "\n";}}}if (cnt == 0) {cout << "NONE";}return 0;
}
相关文章:
山东大学考研机试题——整数序列
题目描述 传送门——AcWing 3717. 整数序列 - AcWing 很多整数可以由一段连续的正整数序列(至少两个数)相加而成,比如 2534567121325345671213。 输入一个整数 N,输出 N 的全部正整数序列,如果没有则输出 NONE。 输…...

一口酒一口水,不宜喝醉
一口酒一口水。这样交替着喝可以冲淡血液里的酒精浓度,但要注意不是往酒里兑水。 小口喝。每小时分解酒精的能力有限,如果超过负荷,血液里乙醛浓度会增加,引起酒醉。因此,喝酒时要尽量小口慢慢喝,给分解酒精…...

AI6-PPOCRLabel带GPU训练
一、移动PPOCRLabel 从anconda安装目录中找到PPOCRLabel文件夹,移动到PaddleOCR-release-2.8文件夹下 二、启动PPOCCRLabel cmd命令行进入paddle_py38环境,使用PPOCRLabel --lang ch来启动PPOCRLabel 三、打开图片文件夹自动标志 四、标签数据整理 …...
Unity四元数线性插值Lerp
inline glm::quat Lerp(glm::quat quat1, glm::quat quat2, float t)//普通插值 {t glm::clamp(t, 0.0f, 1.0f);return glm::normalize(quat1*(1-t)quat2*t); }...
Makefile 语法
Makefile文件用于管理和组织代码工程的编译和链接,需要被make工具解析并完成相关的动作。 1、文件包含: 语法:include 文件名 作用:将其它makefile文件包含进来,组成一个更大的makefile文件,这样有利于make…...
【运维项目经历|039】Ceph高性能云存储集群部署与优化
🍁博主简介: 🏅云计算领域优质创作者 🏅2022年CSDN新星计划python赛道第一名 🏅2022年CSDN原力计划优质作者 🏅阿里云ACE认证高级工程师 🏅阿里云开发者社区专家博主 💊交流社区:CSDN云计算交流社区欢迎您的加入! 目录 项目名称 项目背景 项目目标 项目成果…...
算法刷题之哈希表
知识点 常见的哈希结构:数组、set、map // 创建并初始化 unordered_set unordered_set<int> set {1, 2, 3, 4, 5};// 插入新元素 set.insert(6);// 检查元素是否存在 if (set.find(3) ! set.end()) {cout << "3 is in the set" << e…...

【linux】linux中定时任务的巧妙运用,让你轻松解放双手
✨✨ 欢迎大家来到景天科技苑✨✨ 🎈🎈 养成好习惯,先赞后看哦~🎈🎈 🏆 作者简介:景天科技苑 🏆《头衔》:大厂架构师,华为云开发者社区专家博主,阿里云开发者社区专家博主,CSDN全栈领域优质创作者,掘金优秀博主,51CTO博客专家等。 🏆《博客》:Python全…...

【复旦微FM33 MCU 外设开发指南】系统篇——时钟
前言 本系列基于复旦微FM33系列单片机的DataSheet编写,旨在提供一些开发指南。 本文章及本系列其他文章将持续更新,本系列其它文章请跳转↓↓↓ 【复旦微FM33 MCU 外设开发指南】总集篇 本文章最后更新日期:2024/08/04 文章目录 前言时钟源…...

Android Graphics 显示系统 - 计算FPS的原理与探秘Present Fence
“ 最近忙着新房子装修的事情,这篇计划内的文章拖了好久一直没有足够的时间来写作,终于挤出些儿时间来继续研究学习了。” 整了四个晚上终于拼凑出一篇文章,虽说是讲FPS计算原理,但该文涉及的知识点还是蛮多的,特别是对…...

图论:1857. 有向图中最大颜色值(拓扑排序+动态规划)
文章目录 1.问题分析2.代码解析2.1 代码步骤1. 初始化数据结构2. 构建图和入度数组3. 初始化队列4. 拓扑排序和动态规划5. 检查是否存在环并返回结果 3. 问题扩展1. 最长路径问题(DAG)2. 最短路径问题(DAG)3. 最大路径和问题4. 路…...

pytorch学习笔记3 tensor索引和切片
dim 0 占先 切片 (前N或者后N个) :2 表示 0到2(不包含2), 1:表示 1到末尾, -1表示最后一个元素,-2表示倒数第二个 0:28:2 表示从0到27隔点采样 :ÿ…...

学习记录——day23 多进程编程
目录 一、多进程引入 1.1、引入目的 1.2、进程的概念 1.3、进程的种类 1.4、进程号的概念 1.5、特殊进程 0号 1号 2号 孤儿 僵尸 1.6、进程的相关命令 1)查看进程信息的命令:ps 跟不同的选项,执行不同的状态 2&am…...

英特尔股市暴跌,财报亏损 | HuggingFace 实现盈利 |iOS18 Beta 苹果AI
写在前面 了解一下最近科技圈发生的一些事情 英特尔 硬件巨头英特尔宣布裁掉1.5w个岗位,约占英特尔员工的12%,非常的夸张。本次裁员可能是由于前段时间英特尔的i7,i9的13/14代处理器的暴雷,导致英特尔Q2的财报低迷。 今年以来…...

C++入门基础(二)
6. 引用(引用就是取别名) 6.1 引用的概念和定义 引用不是新定义一个变量,而是给已存在变量取了⼀个别名,编译器不会为引用变量开辟内存空间,它和它引用的变量共用同一块内存空间。比如:水浒传中李逵&…...

fabricjs 实现图像的二值化功能
一、效果图 二、图像二值化的作用 二值化是图像处理中常用的一种方法,其作用是将灰度图像转换为二值图像,即将图像中的像素点根据其灰度值分成两类:黑色和白色。这种处理方法可以帮助我们更清晰地识别图像中的目标,简化图像的复杂…...
修改本地hosts文件及外部访问机器本地hosts文件后,rancher UI网站仍然不能访问
原因排查 kubectl get svc # 输出: NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE kubernetes ClusterIP 10.96.0.1 <none> 443/TCP 4d17hkubectl get svc -A # 输出: NAMESPACE …...

西北潮榆林范儿,新榆林首个360°沉浸式剧场发布会闪耀亮相
这是一场城市更迭的未来大赏,也是一场商业蝶变的复合对话 8月3日,朗阁集团商业品牌发布会在榆林银杏熙悦酒店隆重启幕。朗阁集团董事长杨志成携众多集团领导出席;多家主流媒体代表联袂参加;喜茶、中影时光国际影城、汉堡王、鲍师傅…...

如何创建响应式移动端网页设计?最佳实践详解
移动端网页设计是一个耗时而复杂的过程开发,包括UI设计、UX设计、检测、发布、改进、维护和持续的错误修复。通过学习这篇文章,你将掌握什么是移动端网页,如何制作移动端网页,以及设计网页的技巧。 什么是移动端网页?…...

Python 如何进行Web抓取(BeautifulSoup, Scrapy)
Web抓取(Web Scraping)是一种从网站提取数据的技术。Python有许多用于Web抓取的库,其中最常用的是BeautifulSoup和Scrapy。 BeautifulSoup BeautifulSoup是一个用于解析HTML和XML文档的Python库,适合处理简单的Web抓取任务。它将…...

云启出海,智联未来|阿里云网络「企业出海」系列客户沙龙上海站圆满落地
借阿里云中企出海大会的东风,以**「云启出海,智联未来|打造安全可靠的出海云网络引擎」为主题的阿里云企业出海客户沙龙云网络&安全专场于5.28日下午在上海顺利举办,现场吸引了来自携程、小红书、米哈游、哔哩哔哩、波克城市、…...

【入坑系列】TiDB 强制索引在不同库下不生效问题
文章目录 背景SQL 优化情况线上SQL运行情况分析怀疑1:执行计划绑定问题?尝试:SHOW WARNINGS 查看警告探索 TiDB 的 USE_INDEX 写法Hint 不生效问题排查解决参考背景 项目中使用 TiDB 数据库,并对 SQL 进行优化了,添加了强制索引。 UAT 环境已经生效,但 PROD 环境强制索…...
【Linux】C语言执行shell指令
在C语言中执行Shell指令 在C语言中,有几种方法可以执行Shell指令: 1. 使用system()函数 这是最简单的方法,包含在stdlib.h头文件中: #include <stdlib.h>int main() {system("ls -l"); // 执行ls -l命令retu…...
Cesium1.95中高性能加载1500个点
一、基本方式: 图标使用.png比.svg性能要好 <template><div id"cesiumContainer"></div><div class"toolbar"><button id"resetButton">重新生成点</button><span id"countDisplay&qu…...

关于iview组件中使用 table , 绑定序号分页后序号从1开始的解决方案
问题描述:iview使用table 中type: "index",分页之后 ,索引还是从1开始,试过绑定后台返回数据的id, 这种方法可行,就是后台返回数据的每个页面id都不完全是按照从1开始的升序,因此百度了下,找到了…...
Objective-C常用命名规范总结
【OC】常用命名规范总结 文章目录 【OC】常用命名规范总结1.类名(Class Name)2.协议名(Protocol Name)3.方法名(Method Name)4.属性名(Property Name)5.局部变量/实例变量(Local / Instance Variables&…...

【机器视觉】单目测距——运动结构恢复
ps:图是随便找的,为了凑个封面 前言 在前面对光流法进行进一步改进,希望将2D光流推广至3D场景流时,发现2D转3D过程中存在尺度歧义问题,需要补全摄像头拍摄图像中缺失的深度信息,否则解空间不收敛…...

从零开始打造 OpenSTLinux 6.6 Yocto 系统(基于STM32CubeMX)(九)
设备树移植 和uboot设备树修改的内容同步到kernel将设备树stm32mp157d-stm32mp157daa1-mx.dts复制到内核源码目录下 源码修改及编译 修改arch/arm/boot/dts/st/Makefile,新增设备树编译 stm32mp157f-ev1-m4-examples.dtb \stm32mp157d-stm32mp157daa1-mx.dtb修改…...

Psychopy音频的使用
Psychopy音频的使用 本文主要解决以下问题: 指定音频引擎与设备;播放音频文件 本文所使用的环境: Python3.10 numpy2.2.6 psychopy2025.1.1 psychtoolbox3.0.19.14 一、音频配置 Psychopy文档链接为Sound - for audio playback — Psy…...
06 Deep learning神经网络编程基础 激活函数 --吴恩达
深度学习激活函数详解 一、核心作用 引入非线性:使神经网络可学习复杂模式控制输出范围:如Sigmoid将输出限制在(0,1)梯度传递:影响反向传播的稳定性二、常见类型及数学表达 Sigmoid σ ( x ) = 1 1 +...