连续自然数之和 C++
对一个给定的自然数M,求出所有的连续的自然数段(从1开始),这些连续的自然数段中的全部数之和为M。
例子:1998+1999+2000+2001+2002 = 10000,所以从1998到2002的一个自然数段为M=10000的一个解。
输入包含一个整数的单独一行给出M的值(10 <= M <= 2*10^12)。
输出每行两个自然数,给出一个满足条件的连续自然数段中的第一个数和最后一个数,两数之间用一个空格隔开,所有输出行的第一个按从小到大的升序排列,对于给定的输入数据,保证至少有一个解。
输入/输出例子1
输入:
10000
输出:
18 142
297 328
388 412
1998 2002
代码①:
#include<bits/stdc++.h>
using namespace std;
long long n;
int main()
{cin>>n;for(long long i=sqrt(2*n);i>=2;i--){if(n%i==0&i%2==1){long long zj=n/i,gs=i/2;cout<<zj-gs<<" "<<zj+gs<<"\n";}if(i%2==0){long long zj=n/i;long long zuo=zj-(i/2-1),you=zj+i/2;if((zuo+you)*i/2==n) cout<<zuo<<" "<<you<<"\n";}}return 0;
}
代码②
#include<bits/stdc++.h>
using namespace std;
int m;
int main()
{cin>>m;for(int i=sqrt(2*m);i>1;i--){if((i+2*m/i)%2&&2*m%i==0){int j=2*m/i;printf("%d %d\n",(j-i+1)/2,(i+j-1)/2);}}return 0;
}
连续自然数之和 C++相关推荐
- 【华为OD机试真题 JAVA】用连续自然数之和来表达整数
JS版:[华为OD机试真题 JS]用连续自然数之和来表达整数 标题:用连续自然数之和来表达整数 | 时间限制:1秒 | 内存限制:262144K | 语言限制:不限 一个整数可以由连续的自然数之和来表 ...
- 华为OD机试 - 用连续自然数之和来表达整数(Java JS Python)
题目描述 一个整数可以由连续的自然数之和来表示. 给定一个整数,计算该整数有几种连续自然数之和的表达式,且打印出每种表达式 输入描述 一个目标整数T (1 <=T<= 1000) 输出描述 ...
- 【华为OD机试真题 JS】用连续自然数之和来表达整数
标题:用连续自然数之和来表达整数 | 时间限制:1秒 | 内存限制:262144K | 语言限制:不限 一个整数可以由连续的自然数之和来表示.给定一个整数,计算该整数有几种连续自然数之和的表达式,且打 ...
- 华为od统一考试B卷【用连续自然数之和来表达整数】C++ 实现
所有题目均有五种语言实现.C实现目录.C++ 实现目录.Python实现目录.Java实现目录.JavaScript实现目录 题目 一个整数可以由连续的自然数之和来表示. 给定一个 ...
- 整数拆分为连续自然数之和
闲得蛋疼: 连续自然数之和可以利用等差数列求和公式求得: , N=n*a+n*(n-1)/2: 其中N为需要拆分的整数,n为拆分后连续自然数个数,a为连续自然数中第一位数,比如: 36=11+12+1 ...
- 【用连续自然数之和来表达整数】
■ 题目描述 [用连续自然数之和来表达整数] 一个整数可以由连续的自然数之和来表示. 给定一个整数,计算该整数有几种连续自然数之和的表达式,且打印出每种表达式. 输入描述 一个目标整数T (1 < ...
- 一个整数拆分为连续自然数之和
问题描述:将一个正整数,拆分成连续的自然数之和,输出所有可能的情况 例如: 3 = 1+2 10 = 1+2+3+4 16 = 5+6+7 ... 问题求解: 连续的自然数之和让我们想到了等差数列求和 ...
- 华为OD机试题:整数表达为连续自然数之和
题目描述: 一个整数可以由连续的自然数之和来表示,给定一个整数,计算该整数有几种连续自然数之和的表达式,并打印出每一种表达式. 输入描述: 一个目标整数t 1<= t <=1000 输出描 ...
- HUAWEI 机试题:整数表达为连续自然数之和(Python解法)
题目描述: 一个整数可以由连续的自然数之和来表示,给定一个整数,计算该整数有几种连续自然数之和的表达式,并打印出每一种表达式. 输入描述: 一个目标整数t 1<= t <=1000 输出描 ...
- 正整数分解为几个连续自然数之和
题目:输入一个正整数,若该数能用几个连续正整数之和表示,则输出所有可能的正整数序列. 一个正整数有可能可以被表示为n(n>=2)个连续正整数之和,如: 15=1+2+3+4+5 15=4+5+6 ...
最新文章
- 文化部随机抽查50家网络表演平台 看看有没有那种内容
- 《这就是搜索引擎:核心技术详解》---读后感
- android 之 Hnadler 、Message 、Looper
- python观察日志(part19)--关于iPython中的In[]和Out[]
- 使用canvas绘制时钟
- 分库分表:TIDB,你是来抢生意的?不讲码德?
- 448. Find All Numbers Disappeared in an Array645. Set Mismatch
- java实体类设计_java实验1 实体类的设计-答案
- java编程测试题_Java编程测试可帮助您评估求职者
- 网站维护不给提,问客服就说维护结束会给通知
- eclipse jade插件安装
- 51单片机开发板独立按键试水
- 如何将视频生成M3U8文件格式?
- edg击败we视频_德玛西亚杯八强淘汰赛EDG战胜WE比赛视频回看_完整版视频高清观看...
- ios 事件穿透的原因和解决方法
- 尼康d850相机参数测试软件,尼康D850相机快门计数软件
- 第三届计算机网络安全与软件工程国际学术会议(CNSSE 2023)
- 【vue打包】线上部署报错net::ERR_ABORTED 404 (Not Found)
- Python练习题答案: CIS 122#12中的构造【难度:1级】--景越Python编程实例训练营,1000道上机题等你来挑战
- 模型稳定度指标PSI 释义及计算示例