Codeforces Round #320 (Div. 2) C - A Problem about Polyline
来源:互联网 发布:淘宝物品拍照发展趋势 编辑:程序博客网 时间:2024/04/30 22:18
C. A Problem about Polyline
time limit per test
1 secondmemory limit per test
256 megabytesThere is a polyline going through points (0, 0) – (x, x) – (2x, 0) – (3x, x) – (4x, 0) – ... - (2kx, 0) – (2kx + x, x) – ....
We know that the polyline passes through the point (a, b). Find minimum positive valuex such that it is true or determine that there is no suchx.
Input
Only one line containing two positive integers a andb (1 ≤ a, b ≤ 109).
Output
Output the only line containing the answer. Your answer will be considered correct if its relative or absolute error doesn't exceed10 - 9. If there is no suchx then output - 1 as the answer.
Sample test(s)
Input
3 1
Output
1.000000000000
Input
1 3
Output
-1
Input
4 1
Output
1.250000000000
Note
You can see following graphs for sample 1 and sample 3.
刚开始一看题目,感觉很难,其实仔细想想并不是很难
根据点在直线上,可以得到x=(a+b)/2*k
又因为x<=b,
所以解得2*k<=(a+b)/b;
当22*k为奇数是减一,为偶数时不变
#include<iostream>#include<cstdio>#include<cstring>#include <algorithm>#include<queue>#include<cmath>using namespace std;int main(){ int a,b; while(scanf("%d%d",&a,&b)==2) { int t=a/b+1; if(t<=1) printf("-1\n"); else { if(t%2==1) t--; double ans=(double)(a+b)/(double)t; printf("%.12lf\n",ans); } } return 0;}
0 0
- Codeforces Round #320 (Div. 2)C. A Problem about Polyline
- Codeforces Round #320 (Div. 2) C. A Problem about Polyline
- Codeforces Round #320 (Div. 2) C - A Problem about Polyline
- Codeforces Round #320 (Div. 2) C - A Problem about Polyline
- Codeforces Round #320 (Div. 2) C. A Problem about Polyline
- Codeforces Round #320 (Div. 2) [Bayan Thanks-Round] C. A Problem about Polyline 精度控制
- Codeforces Round #320 (Div. 2) [Bayan Thanks-Round] C. A Problem about Polyline
- Codeforces 579 C. A Problem about Polyline(Codeforces Round #320 (Div. 2) )
- Codeforces Round #320 (Div. 2) 579C A Problem about Polyline(数学)
- Codeforces Round #320 (Div. 1) A. A Problem about Polyline
- Codeforces Round #320 (Div. 2) 578A. A Problem about Polyline
- cf#320 Div.2 Problem C A Problem about Polyline
- cf#320 Div.2 Problem C A Problem about Polyline
- codeforces 320c A Problem about Polyline(数学)
- [CodeForces 579C]A Problem about Polyline[数学]
- CodeForces 579C A Problem about Polyline[数学]
- 【26.09%】【codeforces 579C】A Problem about Polyline
- A Problem about Polyline
- iOS激情详解之URL同步,异步连接
- 用ListView实现GridView
- sauvola算法实现
- 【Android】DownloadManager的使用
- 二叉树的深度优先,广度优先,以及层次遍历算法
- Codeforces Round #320 (Div. 2) C - A Problem about Polyline
- 排序算法
- 创建多线程的两种方式
- 对弹出键盘的监听
- Install lp_solver on Mac 32/64-bit (Run it with Java ILP from Eclipse)
- centos 6u5 搭建nginx+php+mysql环境。
- 话说C语言const用法
- 统计URL出现的频次
- Groovy的闭包