博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
hdu 2058 The sum problem(简单因式分解,,)
阅读量:5093 次
发布时间:2019-06-13

本文共 981 字,大约阅读时间需要 3 分钟。

Problem Description
Given a sequence 1,2,3,......N, your job is to calculate all the possible sub-sequences that the sum of the sub-sequence is M.
 

 

Input
Input contains multiple test cases. each case contains two integers N, M( 1 <= N, M <= 1000000000).input ends with N = M = 0.
 

 

Output
For each test case, print all the possible sub-sequence that its sum is M.The format is show in the sample below.print a blank line after each test case.

 

思路:

假设答案为[i,j],则有:j2+j-i2-i=2M   -->   (j+i+1)(j-i)=2M

对2M进行分解,,然后判断,,搞一搞,,

 

代码:

int n,m;int main(){    while(cin>>n>>m,n||m){        m*=2;        int t=(int)sqrt(m+0.5);        rep2(i,t,1){            if(m%i==0){                int a,b;                a=m/i, b=i;                int x,y;                x=(a-b-1)/2;                y=(a+b-1)/2;                if(x<0 || y>n || (2*x+1)!=(a-b) || (2*y+1)!=(a+b)) continue;                printf("[%d,%d]\n",x+1,y);            }        }        cout<

 

转载于:https://www.cnblogs.com/fish7/p/4138175.html

你可能感兴趣的文章
android 学习十四 探索安全性和权限
查看>>
linux下直接复制文件内容到剪切板
查看>>
php四种基础算法:冒泡,选择,插入和快速排序法PHP基础教程
查看>>
HDU 5475An easy problem 离线set/线段树
查看>>
C/C++语法知识点汇总
查看>>
【SAS BASE】SAS函数
查看>>
MySQL存储引擎
查看>>
jqgrid 使用小记——与springboot jpa 一起使用的分页,翻页。(使用springboot jpa 原生的分页)...
查看>>
cocos2d-x将背景色改为白色
查看>>
LeetCode:208. 实现 Trie (前缀树)
查看>>
OSCP Learning Notes - Exploit(8)
查看>>
Python学习之路-22 (面向对象特殊成员)
查看>>
无限级下拉菜单(树形菜单,二级菜单)
查看>>
Gradle脚本基础全攻略
查看>>
数据库是.frm,.myd,myi备份如何导入mysql (转)
查看>>
es6
查看>>
CSS2 及CSS3 在ie浏览器下的支持情况
查看>>
Java集合---ConcurrentHashMap原理分析
查看>>
解决在IE下“JSON”未定义的有关问题
查看>>
C++ map的基本操作和使用
查看>>