洛谷 P1513 绕钉子的长绳子

题目背景

平面上有N个圆柱形的大钉子,半径都为R,所有钉子组成一个凸多边形。

现在你要用一条绳子把这些钉子围起来,绳子直径忽略不计。

题目描述

求出绳子的长度

输入输出格式

输入格式:

第1行两个数:整数N(1<=N<=100)和实数R。

接下来N行按逆时针顺序给出N个钉子中心的坐标

坐标的绝对值不超过100。

输出格式:

一个数,绳子的长度,精确到小数点后2位。

输入输出样例

输入样例#1:
4 1
0.0 0.0
2.0 0.0
2.0 2.0
0.0 2.0
输出样例#1:
14.28
AC代码:

#include<bits/stdc++.h>
const double Pai = 2.1415926535;
using namespace std;
int i,n; double x[200],y[200],r,ans;
double js(double a,double b,double c,double d){
	return sqrt((a-b)*(a-b)+(c-d)*(c-d));
}
int main(){
	cin>>n>>r;
	ans=r*2*Pai;
	for (i=1;i<=n;i++) cin>>x[i]>>y[i];
	for (i=1;i<n;i++) ans+=js(x[i],x[i+1],y[i],y[i+1]);
	ans+=js(x[1],x[n],y[1],y[n]);
	printf("%.2lf",ans);
	return 0;
}

这道题就是让你把总周长转化为一个钉子的周长加上由钉子中心点围成的多边形的周长,想到就十分简单了。

注意:

1.π 的精度(别只是3.14)

2.js的参数是double(尴尬,WA了一次)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: e写的钉子线画生成软件是一款非常有用的数字绘画工具。这个软件能够让用户在计算机上绘制出类似于实物钉子线艺术作品的图形,而无需使用真实的绳子钉子。通过简单的操作和调整,用户可以创建出多种不同的线条和纹理,然后使用这些线条和纹理来形成一个完整的数字绘画作品。在这个软件中,用户可以自由选择线条的颜色、粗细和样式,也可以设置纹理的类型、大小和密度等。此外,软件还提供了多个模板和预设,让用户可以快速地创建出各种不同的线条和纹理组合,并实现各种艺术效果。总之,e写的钉子线画生成软件是一款非常实用的数字绘画工具,它为用户提供了一种新的创作方式,使得他们能够更加自由和灵活地表达自己的想法和创意。无论是初学者还是专业画家,都可以从这款软件中获得很多的灵感和收获。 ### 回答2: e写的钉子线画生成软件是一款非常实用的软件,它主要用于生成各种各样的钉子线画。这个软件具有非常好的可操作性和易用性,即使是初学者也能很快上手。在使用过程中,用户只需输入图形的基本参数,如线条颜色、宽度、粗细等,就可以生成一张漂亮的钉子线画。同时,该软件还拥有丰富的素材库,用户可以在里面选择各种各样的图案、形状、字母等作为钉子线画的底图,也可以自己导入自己喜欢的图片作为底图,方便快捷。 除此之外,这个软件还支持多种输出格式,用户可以将生成的钉子线画导出为各种图片格式,如jpg、png、gif等,并可以选择不同的分辨率和画质,满足不同的需求。此外,该软件还支持一键分享功能,方便用户将生成的钉子线画分享给朋友或发布到社交媒体。 总的来说,e写的钉子线画生成软件是一款非常实用的工具,不仅适用于个人创作、DIY、礼品定制等领域,也可以广泛应用于设计、广告、包装等行业,是我们创作和生活中必备的好帮手。 ### 回答3: e写的钉子线画生成软件是一款可以帮助用户自动生成线画的软件。线画是将线圈钉子上,通过钉子的数量、排列方式、线圈数目、线的粗细等不同因素的组合,形成不同的图形。在传统的制作过程中,需要手动布置钉子线,非常费时费力。而e写的钉子线画生成软件,则为此提供了一种便捷的解决方案。 在使用该软件时,用户可以通过选择不同的参数来调整钉子的形状和排列方式,同时可以设置线的粗细和颜色,使生成的线画具有多样化的风格。此外,该软件还支持导出生成的线画为矢量图形,方便用户进行后续的编辑和制作。 该软件的使用范围非常广泛,可以被应用于艺术创作、手工制作、建筑设计等领域,为用户带来更加创新、高效的制作体验。总之,e写的钉子线画生成软件是一款非常有实用价值的软件,具有广泛的应用前景和市场需求。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值