无限的路_hdu_2073(AC).java
无限的路
Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 4459 Accepted Submission(s): 2303
甜甜的好朋友蜜蜜发现上面的图还是有点规则的,于是他问甜甜:在你画的图中,我给你两个点,请你算一算连接两点的折线长度(即沿折线走的路线长度)吧。
每组数据由四个非负整数组成x1,y1,x2,y2;所有的数都不会大于100。
0 0 0 1
0 0 1 0
2 3 3 1
99 99 9 9
5 5 5 5
2.414
10.646
54985.047
0.000
/*
*
* 8877063 2013-08-08 20:03:11 Accepted 2073 125MS 3360K 803 B Java zhangyi
*/
import java.text.DecimalFormat;
import java.util.Scanner;
public class MM{//求点到原点的距离,最后相减的绝对值
public static void main(String[] args) {
//DecimalFormat dec = new DecimalFormat("0.000");
Scanner input=new Scanner(System.in);
int N=input.nextInt();
while(N-->0){
int x=input.nextInt();
int y=input.nextInt();
int x1=input.nextInt();
int y1=input.nextInt();
//System.out.println(dec.format(Math.abs(f(x,y)-f(x1,y1))));
System.out.println(String.format("%.3f",Math.abs(f(x,y)-f(x1,y1))));
//上边的两个输出格式控制都可以用,下边的不可以用,否则会PE,评判系统不支持
//System.out.printf("%.3f\n",Math.abs(map[x1][y1]-map[x][y]));
}
} private static double f(int x, int y) {
double sum=0.0;
int n=x+y;
for(int i=0;i<=n;i++){
sum+=Math.sqrt(Math.pow(i, 2)+Math.pow(i-1, 2));//无点线的长度
}
for(int i=1;i<n;i++){//45度线的长度
sum+=Math.sqrt(2*((double)Math.pow(i, 2)));
}
sum+=(double)x*Math.sqrt(2.0);//
return sum;
}
}
//8877253 2013-08-08 20:14:46 Accepted 2073 156MS 4104K 711 B Java zhangyi
import java.util.Scanner; public class Main{//先打表后输出
private static double map[][]=new double[205][205];
public static void main(String[] args) {
Scanner input=new Scanner(System.in);
double sum=0; for(int i=1;i<205;i++){
sum+=Math.sqrt((i-1)*(i-1)+i*i);
map[0][i]=sum;
sum+=Math.sqrt(2*(i*i));
map[i][0]=sum;
}
for(int i=1;i<205;i++){
for(int j=1;j<205-i;j++){
map[i][j]=map[i-1][j+1]+Math.sqrt(2);
}
}
int N=input.nextInt();
while(N-->0){
int x=input.nextInt();
int y=input.nextInt();
int x1=input.nextInt();
int y1=input.nextInt();
System.out.println(String.format("%.3f",Math.abs(map[x1][y1]-map[x][y])));
}
}
}
无限的路_hdu_2073(AC).java的更多相关文章
- JSU省赛队员选拔赛个人赛1(Coin Change、Fibbonacci Number、Max Num、单词数、无限的路、叠筐)
JSU省赛队员选拔赛个人赛1 一.题目概述: A.Coin Change(暴力求解.动态规划) B.Fibbonacci Number(递推求解) C.Max Num(排序.比较) D.单词数 ...
- Java进阶之路 - 1.走近Java
Java进阶之路 - 1.走近Java 一.走近Java思维导图
- 【重走Android之路】【Java面向对象基础(三)】面向对象思想
[重走Android之路][基础篇(三)][Java面向对象基础]面向对象思想 1 面向对象的WWH 1.1 What--什么是面向对象 首先,要理解“对象”.在Thinkin ...
- 【重走Android之路】【Java面向对象基础(二)】细说String、StringBuffer和StringBuilder
[重走Android之路][基础篇(二)][Java面向对象基础]细说String.StringBuffer和StringBuilder 1.String String是Java中的一个final ...
- 【重走Android之路】【Java面向对象基础(一)】数据类型与运算符
[重走Android之路][基础篇(一)][Java面向对象基础]数据类型与运算符 1.数据类型介绍 在Java中,数据类型分为两种:基本数据类型和引用类型. 基本数据类型共8种,见下表: 基本数 ...
- 我的程序员之路:自学Java篇
序章 时光疾驰,从事IT行业已两年有余. 16年11月开始自学Java,从此开启自学之路,后来实习期自学大数据.python.爬虫等,最终成长为一名平凡的程序员.回首望去,一路上的过往历历在目,有初学 ...
- mac os intellij如何快路查看一个java类的所有方法,结构
如果是自己写的java类,点击点击导航的project-setting-show members 如果是系统库的,点击structure 再点一下lib中的类,或者快捷键 command+F12
- HDOJ 2073 无限的路
Problem Description 甜甜从小就喜欢画图画,最近他买了一支智能画笔,由于刚刚接触,所以甜甜只会用它来画直线,于是他就在平面直角坐标系中画出如下的图形: 甜甜的好朋友蜜蜜发现上面的图还 ...
- 使用Google Roads API抓取道路信息(java实现)
Google Roads API提供了强大的道路获取接口,用户仅仅需调用对应的API就能够获取对应区域的道路坐标以及道路的限速信息. 详细的调用方法例如以下: https://roads.google ...
随机推荐
- 【转】Compile、Make和Build的区别
原文网址:http://lavasoft.blog.51cto.com/62575/436216 原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任 ...
- UESTC_握手 CDOJ 913
握手 Time Limit: 2000/1000MS (Java/Others) Memory Limit: 65535/65535KB (Java/Others) Submit Status ...
- Bring Your Charts to Life with HTML5 Canvas and JavaScript
Bring Your Charts to Life with HTML5 Canvas and JavaScript Bring Your Charts to Life with HTML5 Canv ...
- No.26
"信是未见之事的实底,是所望之事的确据".
- Hibernate框架(一)——总体介绍
作为SSH三大框架之一的Hibernate,是用来把程序的Dao层和数据库打交道用的,它封装了JDBC的步骤,是我们对数据库的操作更加简单,更加快捷.利用Hibernate框架我们就可以不再编写重复的 ...
- Splay POJ3468(老题新做)
A Simple Problem with Integers Time Limit:5000MS Memory Limit:131072KB 64bit IO Format:%I64d ...
- setSingleChoiceItems和setPositiveButton两者触发时期
两者都是对话框中的操作当中 setSingleChoiceItems是在点击对话框中的列表时候被触发,当点击后运行实现的内容 setPositiveButton是在点击完对话框中的确定button时被 ...
- nomasp 博客导读:Android、UWP、Algorithm、Lisp(找工作中……
Profile Introduction to Blog 您能看到这篇博客导读是我的荣幸.本博客会持续更新.感谢您的支持.欢迎您的关注与留言.博客有多个专栏,各自是关于 Android应用开发 .Wi ...
- 使用Xcode上传代码至GitHub
几乎所有iOS程序员都上过GitHub寻找开源类库,的确,GitHub上有大量优秀的开源类库供大家学习.但是如何在Xcode中上传代码至GitHub呢? (开始之前先安装git,具体方法这里讲的很清楚 ...
- linux下 /etc/profile、~/.bash_profile ~/.profile的执行过程
关于登录linux时,/etc/profile.~/.bash_profile等几个文件的执行过程. 在登录Linux时要执行文件的过程如下: 在刚登录Linux时,首先启动 /etc/profile ...