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

Output

14.28


import java.util.Scanner;class Point{double x, y;public Point (double x, double y) {this.x = x;this.y = y;}public double js(Point a) {return Math.sqrt((x - a.x) * (x - a.x) + (y - a.y) * (y - a.y));}
}public class Main {public static void main(String[] args) {Scanner reader = new Scanner(System.in);int n = reader.nextInt();double r = reader.nextDouble();Point p[] = new Point [n];double c = 2.0*Math.PI*r;for(int i = 0; i < n; i++){p[i] = new Point (reader.nextDouble(), reader.nextDouble());}for(int i = 0; i < n - 1; i++)c = c + p[i].js(p[i + 1]);c = c + p[0].js(p[n - 1]);System.out.printf("%.2f\n", c);reader.close();}
}

织女的红线_JAVA相关推荐

  1. boot项目中pom依赖已经删除了但是maven上还是报红线_Java Web项目是怎么跑起来的?...

    良心公众号 关注不迷路 01 简单Java程序的启动过程 在之前的HelloWorld是怎么跑起来的?一文中,我们一起学习了IDE执行简单的Java程序的过程.可以总结为如下三个步骤: 首先,将程序通 ...

  2. python导入类有红线_python踩坑系列之导入包时下划红线及报错“No module named”问题...

    python踩坑系列之导入包时下划红线及报错"No module named"问题 使用pycharm编写Python时,自己写了一个包(commontool),在同级另一个路径下 ...

  3. VS2010与Qt设置出现红线提示

    任何类库导入都有可能出现红线,主要原因是"包含目录没有设置" 点击"项目"-> (你的项目)属性->配置属性->VC++目录->包含目录 ...

  4. 模仿Hibernate的逆向工程_java版_源码下载

    在这篇blog:"Hibernate逆向工程原理_java版本"中谈到了Hibernate逆向工程原理. 我喜欢理论和实践相结合....so,今天我试着模仿hibernate的逆向 ...

  5. 某大龄程序员用亲身经历推翻35岁红线:大厂offer拿到手软,35岁才是黄金年龄!...

    35岁程序员难找工作已经成为互联网圈内人尽皆知的事,但一个35岁程序员却用亲身经历告诉我们:35岁不仅不难找工作,相反还是找工作的黄金年龄.他拿到了字节.蚂蚁.华为.虾皮还有若干创业公司的offer. ...

  6. 当法律纽带变成“机器红线”,能让自动驾驶汽车更安全吗?

    来源: 脑极体 美国汽车协会(American Automobile Association, AAA)与哈佛大学的一项研究结果显示,高达77%的人表示担心自己与自动驾驶汽车共享道路的安全性,62%则 ...

  7. 中科大“量子鹊桥”登Nature封面,量子牛郎和织女没见面就能纠缠了

    梦晨 发自 凹非寺 量子位 报道 | 公众号 QbitAI 中科大首次实现多模式量子中继,并实现两个固态存储器的量子纠缠. 看不懂? 没关系,研究人员将其比喻成"量子鹊桥":让&q ...

  8. java象棋无框架版_Java版中国象棋

    /* *中国象棋Java *作者:yanick *源文件:Chess.java *最后修改时间:2006-11-1 *添加功能:实现了当前棋局的保存 *Chess.java */ import jav ...

  9. java map 红黑树_Java集合-TreeMap和红黑树

    TreeMap是一种通过实现了红黑树数据结构的Map集合. [图片有英文注释的均摘抄于国外文章] 首先,先来看一些基础概念. 1. 二叉排序树 二叉排序树的定义和性质: (1)若左子树不空,则左子树上 ...

最新文章

  1. python常用包下载_Python及其常用模块库下载及安装
  2. Element DOM Tree jQuery plugin – Firebug like functionality | RockingCode
  3. 鼠标滚动缩放图片效果
  4. SLAM:VSLAM简介之详细攻略
  5. linux脚本中如何读取文件,如何在Shell脚本中逐行读取文件
  6. 如何设置静态内容缓存时间
  7. LeetCode(566)——重塑矩阵(JavaScript)
  8. Interface Project
  9. 同时安装python2和python3
  10. NXP恩智浦单片机Keil5环境下编程
  11. 《Option Volatility Pricing》阅读笔记之 Volatility(波动率)
  12. Markdown中如何添加特殊符号
  13. 小学-知识与能力【9】
  14. 机房环境动力监控系统功能介绍及设计需求规划和选择
  15. 华为云服务权限在哪_华为云资源IAM精细控制权限实践
  16. 实例 | 分析38万条数据,用Python分析保险产品交叉销售和哪些因素有关
  17. JavaScript 触发浏览器页面全屏,某div区域全屏
  18. 从零开始实现k线图走势图绘制(iOS理论篇)
  19. R语言对多个数据框的相同列进行操作
  20. 开源GNSS软件RTKLIB学习总结(一)MarkDown、VS配置RTKLIB、矩阵、最小二乘和Kalman滤波基本函数

热门文章

  1. 解决问题:EnvironmentLocationNotFound: Not a conda environment: /anaconda3/envs/anaconda3
  2. android 4.3 操作源码实现系统截屏(暂无移植性)
  3. Auto-Publishing and Monitoring APIs With Spring Boot--转
  4. You Need This One Skill to Succeed in IT--reference
  5. elasticsearch6.X 及head插件部署(完整版)
  6. 量子计算机编程原理简介 和 机器学习
  7. BaaS(区块链即服务Blockchain as a Service)
  8. Gradient Boost 算法流程分析
  9. 李开复:走向全球的两大路径,中美何以各占其一
  10. 编写测试用例的方法_适合小白的测试用例编写方法,一看就会!