2020年广东工业大学第十届文远知行杯新生程序设计竞赛------母牛上树

题目描述

在这里插入图片描述
母牛刚来到广东柱子大学时,就被学校的柱子深深地迷住。于是,母牛立下了flag,要在大学4年爬遍学校的柱子。同时,每个柱子顶部都有一个最佳的俯瞰学校的观测点。母牛在爬柱子时,会从柱子底爬到柱子顶的最佳观测点。为了尽快爬完大学所有的柱子,母牛想知道他爬一根柱子最短路径。

题目解释

母牛不能在柱子上爬,所以。。。。。。。先绕着柱子打转到T点下方然后上柱子(不要想歪了啊,柱子会生气啊?!)。
所以可以将其看成一个三角形,底边为母牛绕柱子走的距离,直角边为柱子高度,斜边为所求距离。

接下来上代码哈哈哈哈!(小菜鸡,求求大佬别怼,拜谢。)

#include<stdio.h>
#include<math.h>
#define PI 3.1415926535
int main()
{
    
    
	long long  a,b,c,r,l,h;
	int d;
	double n[1000];
	scanf("%lld",&c);
	for(d=0;d<c;d++)//分组输入。 
	{
    
    
	scanf("%lld%lld%lld%lld",&a,&b,&r,&h);//输入圆柱上方角度和下方角度,圆面半径,圆柱高度。	
	if(a-b<0)
	l=-(a-b);
	else
	l=(a-b);
	if(l>180)//角度值转正 
	l=360-l;//大于180,抄近路,走另一边,母牛不走远路。 
	n[d]=(2*PI*r*(l/(360*1.0)))*(2*PI*r*(l/(360*1.0)))+h*h;//上公式,勾股定理。对了*1.0是为了将int转换为double防止其失去精度。		
	}
	for(d=0;d<c;d++)
	{
    
    
		printf("%.2lf\n",n[d]);//出来了,散花。 
		
	}
return 0;	
}

好了,就酱了拜拜ヾ(•ω•`)o。

猜你喜欢

转载自blog.csdn.net/qq_52425315/article/details/110753091