C++ 电子奥运:蛋糕。答错

C++ 电子奥运:蛋糕。答错,c++,mathematical-optimization,C++,Mathematical Optimization,这是一个e-olymp编程问题 为了纪念继承人图蒂的出生,皇家厨师准备了一个巨大的蛋糕,放在桌上给三个胖子吃。第一个胖子可以自己吃蛋糕1小时,第二个2小时,第三个3小时 三个胖子什么时候能同时吃蛋糕 当我在正常Gnu C++中提交时,它给出了27%的准确结果;当我在GnuC++4.7.1中提交时,它给出了8%的准确结果??有什么问题吗??是我的错吗??请帮忙 我的代码: #include<iostream> #include<cstdio> using namespac

这是一个
e-olymp
编程问题

为了纪念继承人图蒂的出生,皇家厨师准备了一个巨大的蛋糕,放在桌上给三个胖子吃。第一个胖子可以自己吃蛋糕1小时,第二个2小时,第三个3小时

三个胖子什么时候能同时吃蛋糕

当我在正常
Gnu C++
中提交时,它给出了27%的准确结果;当我在Gnu
C++4.7.1
中提交时,它给出了8%的准确结果??有什么问题吗??是我的错吗??请帮忙

我的代码:

#include<iostream>
#include<cstdio>

using namespace std;

int main()
{

    double t1, t2, t3;
    scanf("%lf %lf %lf", &t1, &t2, &t3);

    double ans=(t1/3.0)+(t2/3.0)+(t3/3.0);
    ans=(ans/3.0);
    printf("%.2lf\n", ans);
    return 0;

}
#包括
#包括
使用名称空间std;
int main()
{
双t1,t2,t3;
扫描频率(“%lf%lf%lf”、&t1、&t2和&t3);
双ans=(t1/3.0)+(t2/3.0)+(t3/3.0);
ans=(ans/3.0);
printf(“%.2lf\n”,ans);
返回0;
}
您的逻辑错误

想象一下,第一个人可以在1小时内吃掉整个蛋糕

如果另外两个人帮忙,蛋糕会很快吃完。这将花费不到一个小时的时间

下面是一个模拟该场景的输入

1 999 999
您的程序根据需要计算所需的时间

((1/3.0)+(999/3.0)+(999/3.0)/3.0)
那是444.33小时。

我的方法是错误的。 只是我必须使用以下规则:
t1
hours/cake=
1/t1
cakes/hour

对于这三个人,他们在一小时内吃了
1/t1+1/t2+1/t3
蛋糕

在h小时内,他们吃
h(1/t1+1/t2+1/t3)
蛋糕

吃一整块蛋糕的时间必须满足
h(1/t1+1/t2+1/t3)=1
h=1/(1/t1+1/t2+1/t3)。

代码为:

double t1, t2, t3;
scanf("%lf %lf %lf", &t1, &t2, &t3);

double ans=1/((1/t1)+(1/t2)+(1/t3));
printf("%.2lf\n", ans);

你应该加上“速度”,而不是持续时间。@NafeeurRahman我觉得我帮了忙。无论如何,我不想破坏该网站的目的。祝你好运