Java实现 蓝桥杯VIP 算法训练 连续正整数的和
2024-09-03 12:14:43
问题描述
78这个数可以表示为连续正整数的和,1+2+3…+12,18+19+20+21,25+26+27。
输入一个正整数 n(<=10000) 输出 m 行(n有m种表示法),每行是两个正整数a,b,表示a+(a+1)+…+b=n。 对于多种表示法,a小的方案先输出。
样例输入
78
样例输出
1 12
18 21
25 27
import java.util.Scanner;
public class 连续正整数的和 {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int n = in.nextInt();
in.close();
for (int i = 1; i < n; i++) {
double tmp = 0.5 + Math.sqrt(2 * n + i * i - i + 0.25);
int b = (int)tmp;
if (Math.abs(b - tmp) <= 0.000001) {
System.out.println(i + " " + (b - 1));
}
}
}
}
最新文章
- Windows添加和取消右键管理员权限
- 【原】你真的懂iOS的autorelease吗?
- iOS----友盟分享完善版本
- Memcache技术分享:介绍、使用、存储、算法、优化、命中率
- easyui enableFilter combobox级联 combotree
- 关于学习Scala语言的一些感悟
- Java按正则提取字符串
- Qt之生成Window资源文件(.rc 文件)
- VBS脚本和HTML DOM自动操作网页
- 接口测试之soapUI(WebService)
- WPF基础篇之空间布局
- Office 365 应用开发的 .NET Core 模板库
- python word转pdf
- layer.tips属性
- python科学计算
- 在win上配置linux虚拟机图解
- debian9使用systemd部署etcd集群
- 基于SmartThreadPool线程池技术实现多任务批量处理
- Effective C++ Item 13 Use object to manage resources
- 2016级算法期末模拟练习赛-A.wuli51和京导的毕业旅行