Java练习 SDUT-2240_织女的红线
织女的红线
Time Limit: 1000 ms Memory Limit: 65536 KiB
Problem Description
好久不见牛郎哥哥了,织女非常想他,但是她想考验一下牛郎在她不在的日子里有没有好好学习天天向上,于是乎
想出一个问题考一考他。织女找了一跟很细的红线和N颗相同的钉子,将各颗钉子钉在墙上作为一个多边
形的各个顶点,然后将红线缠在各个钉子上围成了多边形,多余的剪掉。下面给出了图示。

可惜牛郎不会算,悲剧了,但他不想让织女失望,还好有你这个朋友,你的任务是帮他计算出红线的长度。
Input
在输入数据的第一行有两个数:N——钉子的数目(1 <= N <= 100),R——钉子的半径。所有的钉子半径
相同。接下来有N行数据,每行有两个空格隔开的实数代表钉子中心的坐标。坐标的绝对值不会超过
100。钉子的坐标从某一颗开始按照顺时针或逆时针的顺序给出。不同的钉子不会重合。
Output
输出一个实数(小数点后保留两位)————红线的长度。
Sample Input
4 1
0.0 0.0
2.0 0.0
2.0 2.0
0.0 2.0
Sample Output
14.28
Hint
Source
tongjiantao
import java.util.*;
public class Main
{
static public void main(String[] args)
{
Scanner cin = new Scanner(System.in);
int n,r,i;
double sum;
n = cin.nextInt();
r = cin.nextInt();
sum = (double)r * Math.PI * 2;
point a[] = new point[n];
for(i=0;i<n;i++)
a[i] = new point(cin.nextDouble(),cin.nextDouble());
for(i=1;i<n;i++)
sum += a[i].dis(a[i-1]);
sum += a[0].dis(a[n-1]);
System.out.printf("%.2f\n",sum);
cin.close();
}
}
class point
{
double x,y;
point(double x,double y)
{
this.x = x;
this.y = y;
}
double dis(point a)
{
return Math.sqrt((x-a.x)*(x-a.x) + (y-a.y)*(y-a.y));
}
}
Java练习 SDUT-2240_织女的红线的更多相关文章
- Java练习 SDUT - 2669_2-2 Time类的定义
2-2 Time类的定义 Time Limit: 1000 ms Memory Limit: 65536 KiB Problem Description 通过本题目的练习可以掌握类与对象的定义: 设计 ...
- Java面向对象2(G~J)
G 织女的红线(SDUT 2240) import java.util.Scanner; import java.text.DecimalFormat; class Sum { double x ...
- 从Java角度理解Angular之入门篇:npm, yarn, Angular CLI
本系列从Java程序员的角度,带大家理解前端Angular框架. 本文重点介绍Angular的开发.编译工具:npm, yarn, Angular CLI,它们就像Java在中的Maven,同时顺便介 ...
- (转载)从Java角度理解Angular之入门篇:npm, yarn, Angular CLI
本系列从Java程序员的角度,带大家理解前端Angular框架. 本文是入门篇.笔者认为亲自动手写代码做实验,是最有效最扎实的学习途径,而搭建开发环境是学习一门新技术最需要先学会的技能,是入门的前提. ...
- 【Java编程实战】Metasploit_Java后门运行原理分析以及实现源码级免杀与JRE精简化
QQ:3496925334 文章作者:MG1937 CNBLOG博客ID:ALDYS4 未经许可,禁止转载 某日午睡,迷迷糊糊梦到Metasploit里有个Java平台的远控载荷,梦醒后,打开虚拟机, ...
- Spark案例分析
一.需求:计算网页访问量前三名 import org.apache.spark.rdd.RDD import org.apache.spark.{SparkConf, SparkContext} /* ...
- Java 泛型快速排序 以sdut 1196为例
oj链接:http://acm.sdut.edu.cn/sdutoj/problem.php?action=showproblem&problemid=1196 Java中,Arrays.so ...
- SDUT中大数实现的题目,持续更新(JAVA实现)
SDUT2525:A-B (模板题) import java.util.Scanner; import java.math.*; public class Main { public static v ...
- java链接MySQL数据库时使用com.mysql.jdbc.Connection的包会出红线问题 java.lang.ClassNotFoundException: com.mysql.jdbc.Driver问题
package com.swift; //这里导入的包是java.sql.Connection而不是com.mysql.jdbc.Connection import java.sql.Connecti ...
随机推荐
- LuceneNet 搜索一
1.引用读取PDF文件组件 FontBox-0.1.0-dev.dll IKVM.GNU.Classpath.dll IKVM.Runtime.dll PDFBox-0.7.3.dll 2.添加off ...
- 移动端页面输入法挡住input输入框的解决方法
1,宽高用了百分比或者vw/vh布局的,input输入框的最外层父容器的可用JS动态设置为当前窗口的宽高(防止输入法的弹出令页面变形) 2,最外层父容器用了fixed定位的,不要用top:0;要用bo ...
- tomcat的访问日志
https://blog.csdn.net/qq_30121245/article/details/52861935 配置位置在这里,每一个域名设置都可以单独设置 %a 这是记录访问者的IP,如果 ...
- Django 的学习(2) 从adminuser到配置
创建一个superuser python manage.py createsuperuser 然后是密码邮箱用户名 You should see a few types of editable con ...
- 门诊叫号系统系列-1.语音叫号 .net c#
最近收到一个需求,朋友诊室需要做到门诊叫号,流程如下:病人选择医生-刷身份证排队-医生点击病人姓名叫号. 经过团队的努力,一个简易的门诊叫号系统已经完成.现在把各个功能记录下来,方便以后查看. 1.语 ...
- 【模板】倍增LCA [2017年5月计划 清北学堂51精英班 Day3]
P3379 [模板]最近公共祖先(LCA) 题目描述 如题,给定一棵有根多叉树,请求出指定两个点直接最近的公共祖先. 输入输出格式 输入格式: 第一行包含三个正整数N.M.S,分别表示树的结点个数.询 ...
- JavaScript 中的多线程通信的方法
在Html 5诞生之后,我们可以使用javascript来实现多线程处理.H5 新增了一个web workers api,使用这个API,用户可以很容易地创建在后台运行的线程,H5 中被称为workd ...
- Djangog写XXOO管理的要求以及思路
- 陈云川的OPENLDAP系列
前言 本 来,我应该准备一篇精彩的演说辞,从LDAP应用的方方面面讲起,细数LDAP在各种场合应用的成功案例,大肆渲染LDAP应用的辉煌前景,指出有多少机 构和组织的关键业务是建立在LDAP的基础上的 ...
- HR招聘_(一)_招聘意识
最近接触到一点HR的工作,贯穿始终,故有点心得,与众人分享.言辞不尽之处,万望指点一二.不胜感激. HR招聘_(一)_招聘意识HR招聘_(二)_招聘方法论(招聘原因及原则) HR招聘_(三)_招聘方法 ...