卡在49分,求助啊啊啊啊
查看原帖
卡在49分,求助啊啊啊啊
252078
Query_Failed楼主2021/1/9 21:26

蒟蒻求助,一直49分


不多说了,直接附代码(求dalao指点)

#include <cmath>
#include <iostream>
#include <cstdio>
using namespace std;
double a[102],b[102];
int n;
double dis(int i)
{
	if(i!=n-1) return double(sqrt((a[i]-a[i+1])*(a[i]-a[i+1])+(b[i]-b[i+1])*(b[i]-b[i+1])));
	else return double(sqrt((a[i]-a[0])*(a[i]-a[0])+(b[i]-b[0])*(b[i]-b[0])));
	//距离公式 
}
int main()
{
	int n;
	double r;
	cin>>n>>r;
	double sum=3.141592653535897932384*2*double(r);//相当于整圆周长 
	for(int i=0;i<n;i++)
	{
		cin>>a[i]>>b[i];
	}
	for(int i=0;i<n;i++)
	{
		sum+=dis(i);//加上每段长度 
	}
	printf("%.2f",sum);
	return 0;//好 习 惯 
}
2021/1/9 21:26
加载中...