GYM 100488 F.Two Envelopes(水~)
来源:互联网 发布:c语言编程实例源代码 编辑:程序博客网 时间:2024/05/18 18:03
Description
从区间[a,b]中选一个数x,然后把x个卢布放在一个信封里,把2x个卢布放在另一个信封里,现在打开了一个信封里面有c个卢布,问是拿手中这个信封还是拿另一个信封使得能够拿到的卢布的期望最大
Input
三个整数a,b,c(1<=a,b,c<=1e9)
Output
如果拿手中这个信封能够得到的卢布数量期望大就输出Stay with this envelope,否则输出Take another envelope
Sample Input
3 5 3
Sample Output
Take another envelope
Solution
如果c>b,那么说明c=2x,显然拿这个;
如果c<=b,那么有两种情况:
1.如果2a>b,说明c必然是x,否则c=2*x>b矛盾,所以拿另一个
2.如果2a<=b,那么c=2x的方案数是x属于区间[a,b/2],c=x的方案数是x属于[b/2+1,b],显然c=x的概率更大,所以还是拿另一个
Code
#include<cstdio>#include<iostream>#include<cstring>#include<algorithm>#include<cmath>#include<vector>#include<queue>#include<map>#include<set>#include<ctime>using namespace std;typedef long long ll;#define INF 0x3f3f3f3f#define maxn 1111int main(){ int a,b,c; while(~scanf("%d%d%d",&a,&b,&c)) { if(c>b)printf("Stay with this envelope\n"); else printf("Take another envelope\n"); } return 0;}
0 0
- GYM 100488 F.Two Envelopes(水~)
- GYM 100971 F.Two Points(三分)
- Gym 100971F Two Points
- GYM 101102 F.Exchange(水~)
- GYM 100488 K.Two Pirates(set)
- GYM 101149 F.The Weakest Sith(水~)
- GYM 100488 Two Pirates(想法)
- [Gym-101350F] F
- GYM 100488 L.Two Heads Are Better(链表)
- GYM 100090 A. After Two Hares(水~)
- Gym 100685F Flood(拓扑排序)
- Gym - 100512F Funny Game(杂题)
- Gym - 101142F Folding(折半)
- codeforces gym 101142 F(思维)
- GYM 100247 F. Battle Fury(二分)
- GYM 100090 F.Asperger Syndrome(set)
- GYM 101173 F.Free Figurines(贪心)
- GYM 101086 F.Hey JUDgE(枚举)
- 我对于创业公司的看法
- 软件测试在产品的各个阶段是做什么的?
- Vue开源项目库汇总
- c语言
- EasyUI常用控件禁用方法
- GYM 100488 F.Two Envelopes(水~)
- C#中new方法和重写方法
- 多态
- hibernate_集合映射的配置文件
- Python爬虫爬数据
- MongoDB与MySQL的插入、查询性能测试
- 第3天学习
- 关于QT的系统总结(非常全面)
- 指针