两名玩家正在玩扑克对赌。在游戏开始时,玩家A有X美元而玩家B有Y美元。
已知X和Y是非负整数,且X + Y = 10000。
两名玩家已经打了三轮对赌,每轮的形式都是如下:
(1)玩家A下注所有的钱。
(2)玩家B照跟玩家A。(也就是说,他们对赌的钱相同。)
(3)开盘,玩家A赢了。
现在的问题是:是否有可能使得:在第三轮对赌结束之后,玩家B恰好还剩下T美元?如果不可能,输出-1。否则,请输出玩家B一开始拥有的金额Y。
第一行,一个整数T。 0<=T<=10000。
一个整数。
输入:
2000
输出:
9000
代码:
#include<bits/stdc++.h>
using namespace std;
int x,y,s;
int main()
{cin>>s;y=s;x=10000-y;for(int i=0;i<3;i++){x=x/2;y=y+x;}if(x+y==10000)cout<<y;else cout<<-1;return 0;
}
本文发布于:2024-01-28 18:04:26,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/17064362699256.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |