赶火车(思维)

Problem Description小伙伴们愉快地结束了暑假wannafly训练营的生活,决定返回学校,早上小伙伴们要赶到高铁站,高铁将在y分钟后停止检票,但他们发现了一件尴尬的事情——他们不认路。

这个城市的道路是非常诡异的,在他们面前有n+m条路,其中n条路是正确的,如果走正确的路,将会在ai分钟后走到高铁站,另外m条路是不正确的,如果走不正确的路,将会在bi分钟后回到起点。

小伙伴们只能随机选择一条路走,但他们记性很差,即使走过一条不正确的路,他们也可能会再次选择这条路。

小伙伴们是非常谨慎的人,他们想要计算到达高铁站所需时间的期望EX,如果EX≤y,那么就出发,否则就退票。
Input第一行是一个整数T,表示有T组数据,接下来T组数据,每组数据包含三行:
n,m,y
a1,a2,…,an
b1,b2,…,bm
含义如题中所述
1≤T≤100,1≤n,m≤10,1≤ai,bi,y≤1000
Output对于每组数据,如果要出发,那么就输出“Go”,否则输出“Wait”,不含引号。
Sample Input
2
4 7 2
1 1 1 1
1 1 1 1 1 1 1
7 4 2
1 1 1 1 1 1 1
1 1 1 1
Sample Output
Wait
Go

设期望值为E,E=[1/(m+n)](a1+a2+…+an+b1+b2+…+bm+mE)
E=(1/n)*(a1+…+an+b1+…+bm)

#include <bits/stdc++.h>
using namespace std;
int main()
{
   
    int t,n,m,y,i,a,b,sum;
    scanf("%d",&t);
    while(t--)
    {
   
        sum=0;
        scanf("%d%d%d",&n,&m,&y);
        for(i=0;i<n;i++)
        {
   
            scanf("%d",&a);
            sum+=a;
        }
        for(i=0;i<m;i++)
        {
   
            scanf("%d",&b);
            sum+=b;
        }
        double e;
        e=sum*1.0/n;
        if(e<=y)
            cout<<"Go"<<'\n';
        else
            cout<<"Wait"<<'\n';
    }
    return 0;
}
全部评论

相关推荐

粗心的雪碧不放弃:纯学历问题,我这几个月也是一直优化自己的简历,后来发现优化到我自己都觉得牛逼的时候,发现面试数量也没有提升,真就纯学历问题
点赞 评论 收藏
分享
美团 后端开发 总包n(15%是股票)
点赞 评论 收藏
分享
1 收藏 评论
分享
牛客网
牛客企业服务