POJ 2590 Steps (ZOJ 1871)
来源:互联网 发布:mac excel 行序号 编辑:程序博客网 时间:2024/05/28 22:09
http://poj.org/problem?id=2590
http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=1871
题目大意:
给两个点a,b,要求从a移动到b,每次移动步数要比前面的一步大或者等于或者小1。求最小的步数。(起始和终点必须步数为1)
思路:
直接对称着来做。
比如:
1->7的话
可以 1 2 2 1
1->9
1 2 3 2 1
50
1 2 3 4 5 6 7 6 5 4 3 2 1 1
两个OJ输入格式不一样。。
下面是POJ的:
#include<cstdio>int main(){int T;scanf("%d",&T);while(T--){int a,b;scanf("%d%d",&a,&b);if(a==b){printf("0\n");continue;}int target=b-a;int sum=0;int step=1;int ans=0;while(sum*2+2*step<target){sum+=step;step++;ans+=2;}if(target-2*sum <=step)ans++;elseans+=2;printf("%d\n",ans);}return 0;}
ZOJ:
#include<cstdio>int main(){int a,b;while(~scanf("%d%d",&a,&b)){if(a==b){printf("0\n");continue;}int target=b-a;int sum=0;int step=1;int ans=0;while(sum*2+2*step<target){sum+=step;step++;ans+=2;}if(target-2*sum <=step)ans++;elseans+=2;printf("%d\n",ans);}return 0;}
4 0
- POJ 2590 Steps (ZOJ 1871)
- zoj 1871 || poj 2590 Steps(数学题 = =)
- zoj 1871 steps 题解(数学)
- ZOJ 1871 Steps
- ZOJ 1871:Steps
- POJ 2590 Steps
- POJ 2590 Steps
- POJ 2590:Steps
- Steps POJ - 2590
- zoj 1414 Number Steps(水~)
- zoj 1414 Number Steps
- ZOJ 1414 Number Steps
- ZOJ 1414 Number Steps
- zoj 1414 Number Steps
- ZOJ 1441 Number Steps
- zoj 1414 Number Steps
- ZOJ 1414:Number Steps
- ZOJ 1414 Number Steps
- UI widget
- ubuntu下klee安装方法
- excel 快速删除表格中的公司只保留数字(包括一个表格包含多个工作表的情况)
- VC 创建Windows服务程序2
- 判断JS对象是否拥有某属性 js进制间相互转换
- POJ 2590 Steps (ZOJ 1871)
- 百度地图开发简单案例(源代码)
- Sobel和Roberts算子的推导过程
- String.format()方法使用说明
- ubuntu下llvm-gcc the Potential incompatible plugin version解决办法
- java mail发送邮件群发 带附件的发送(源代码+详细目录结构)java Email 发送实例
- SpringMVC表单标签简介
- libxml2 简单操作
- 十年莽撞 IT 路