【发布时间】:2020-04-24 00:04:13
【问题描述】:
我正在解决 Toph 中的一个问题。在这个问题中,我必须找出其中有 2 个相等圆的矩形的空白区域。
#include <stdio.h>
float pi=3.1416;
int main()
{
int i,t;
float r,rest;
scanf("%d",&t);
for(i=1;i<=t;i++)
{
scanf("%f",&r);
rest=(4*r*2*r)-(2*pi*r*r);
printf("Case %d: %.2f\n",i,rest);
}
return 0;
这是我的解决方案。它为第一个测试用例返回正确的值,但无法解决第二个测试用例。 有什么问题???
【问题讨论】:
-
也许把
float改成double -
简化公式?
-
简化公式有问题。对于第一种情况,它返回一个不正确的值。
-
IMO 示例输出错误。
-
请edit您的问题并显示您的确切输入以及预期和实际输出。也使用
double代替float和scanf("%f",&r);代替scanf("%f",&r);