华东交通大学2018年ACM“双基”程序设计竞赛 D
游戏的道具是21张塔罗牌,塔罗牌分为大牌和小牌,其中大牌有22张,分别是编号为0的愚者(The Fool)和编号为21的世界(The World)。
给出22张的塔罗牌以及其编号如下:
【0】愚者(The Fool,0)
【1】魔术师(The Magician,I)
【2】女祭司(The High Priestess,II)
【3】皇后(The Empress,III)
【4】皇帝(The Emperor,IV)
【5】教皇(The Hierophant,or the Pope,V)
【6】恋人(The Lovers,VI)
【7】战车(The Chariot,VII)
【8】力量(Strength,VIII)
【9】隐士(The Hermit,IX)
【10】命运之轮(The Wheel of Fate,X)
【11】正义(Justice,XI)
【12】倒吊人(The Hanged Man,XII)
【13】死神(Death,XIII)
【14】节欲(Temperance,XIV)
【15】恶鬼(The Devil ,XV)
【16】塔(The Tower,XVI)
【17】星辰(The Star,XVII)
【18】月亮(The Moon,XVIII)
【19】太阳(The Sun,XIX)
【20】审判(Judgement,XX)
【21】世界(The World,XXI)
游戏的规则是:将22张塔罗牌打乱,然后分别从中翻开一张卡,两张卡的权值和如果为正数,则小新获胜,如果为负数,则小磊获胜。如果这张卡是正位(即是正向的),那么这张牌的权值就为他的序号,如果是逆位(反向),则权值就为序号的相反数。例如:正位的世界的权值为21,逆位的死神的权值为 -13。因为愚者的正逆位都是0,为了让游戏更有趣,他们附加了一条规则:如果翻出了正位的愚者,那么直接判定小新获胜,如果出现了逆位的愚者,那么小磊获胜。
大家都不知道,小磊其实具有将时间暂停几十秒的能力。但是小磊并不想用这个能力作弊,他只想在小新翻开牌的瞬间看看他翻到的是什么牌,然后计算自己可能获胜的几率。
输入描述:
多组输入,输入一个数字a(0<=a<=21)和一个数字b(0<=b<=1),a代表小新翻出来的牌的序号,b代表小新翻出卡的位序,b为0则为逆位,为1则为正位,如果输入为"-1 -1",终止输入。
输出描述:
输出格式为:a/b 该分式为最简式。中间的杠为字符“/”。如果结果为0,则输出“owatta”。如果已经获胜(小新的牌为逆位愚者)则输出“1”。
输出
owatta
#include <cstdio>
#include <cstring>
#include <iostream>
#include <algorithm>
#include <vector>
#include <queue>
#include <set>
#include <map>
#include <string>
#include <cmath>
#include <cstdlib>
#include <ctime>
using namespace std;
typedef long long ll;
int a,b;
int c[]={,-};
int main()
{
while(~scanf("%d%d",&a,&b)){
if(a==-&&b==-) break;
else if(a==&&b==){
printf("owatta\n");
}
else if(a==&&b==){
printf("1\n");
}
else{
int ret=;
if(b==) a=-a;
for(int i=;i<=;i++){
if(i==abs(a)) continue;//不放回
if(i==) {
ret++;//抽到0时的逆位
continue;
}
for(int j=;j<;j++){
if(a+i*c[j]<) ret++;
}
}
if(ret==){
printf("owatta\n");
}
else if(ret==){
printf("1\n");
}
else{
int g=__gcd(ret,);
ret/=g;
printf("%d/%d\n",ret,/g);
}
}
}
return ;
}
华东交通大学2018年ACM“双基”程序设计竞赛 D的更多相关文章
- 华东交通大学2018年ACM“双基”程序设计竞赛 C. 公式题 (2) (矩阵快速幂)
题目链接:公式题 (2) 比赛链接:华东交通大学2018年ACM"双基"程序设计竞赛 题目描述 令f(n)=2f(n-1)+3f(n-2)+n,f(1)=1,f(2)=2 令g(n ...
- 华东交通大学2018年ACM“双基”程序设计竞赛部分题解
链接:https://ac.nowcoder.com/acm/contest/221/C来源:牛客网 C-公式题(2) 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32768K,其 ...
- 华东交通大学2018年ACM“双基”程序设计竞赛 K
MIKU酱是个玩游戏氪金的人,游戏公司给她制定了新的规则,如果想从关卡i到关卡j,你需要交一些钱就可以了,但同时,MIKU酱的爸爸zjw很爱她,所以她可以每过一关就向她爸要一次钱,但她爸每次给他的钱是 ...
- 华东交通大学2016年ACM“双基”程序设计竞赛 1007
Problem Description ACM小学妹在今天的暑假训练结束后,想看球赛放松一下.当他打开电脑时查询到联盟今天直播N场球赛,每场球赛的起止时间(S1,E1),(S2,E2),...,(SN ...
- 华东交通大学2016年ACM“双基”程序设计竞赛 1001
Problem Description 输入一个非负的int型整数,是奇数的话输出"ECJTU",是偶数则输出"ACM". Input 多组数据,每组数据输入一 ...
- 华东交通大学2016年ACM“双基”程序设计竞赛 1008
Problem Description halfyarn找你写个简单的题?好哒!给你n个整数,现在要求你选择两个位置的数,例如选择第pos_a个数a,和第pos_b个数b,给定ans=min(a,b) ...
- 华东交通大学2016年ACM“双基”程序设计竞赛 1005
Problem Description 最近侯ry感觉自己在数学方面的造诣不忍直视:他发现他的学习速率呈一个指数函数递增,疯狂的陷入学习的泥潭,无法自拔:他的队友发现了他的学习速率y=e^(b*lna ...
- 华东交通大学2016年ACM“双基”程序设计竞赛 1004
Problem Description LB是个十分喜欢钻研的人,对什么事都要搞明白.有一天他看到一个公式,((a-b)*c+d*e)/f=k.他想如果给定K的值,一共有多少种不同整数的组合(a,b, ...
- 华东交通大学2016年ACM“双基”程序设计竞赛 1010
Problem Description LB是个十分喜欢钻研的人,对什么事都要搞明白.有一天他学习到了阶乘,他十分喜欢,所以他在想一个问题.如果给定一个数n,求n!能不能被2016整除.LB算了好久都 ...
随机推荐
- window mysql5.7 zip 安装
第一步 ? 1 2 3 4 5 6 7 8 9 10 11 12 my-default.ini 添加配置: #绑定IPv4和3306端 bind-address = 127.0.0.1 port = ...
- kickstart2019 round_A B. Parcels
思路: 利用了曼哈顿距离和切比雪夫距离之间的转化. 参考: https://blog.csdn.net/Dylan_Frank/article/details/88985444 https://www ...
- 一个简单的EventEmitter
用JS写了一个简单的EventEmitter: class EventEmitter { /** * 事件名/回调列表 字典 * @type {Map<string, Array<func ...
- 零基础逆向工程28_Win32_02_事件_消息_消息处理函数
1 第一个图形界面程序 步骤1:创建Windows应用程序 选择空项目 步骤2:在新建项窗口中选C++代码文件 创建一个新的cpp文件 步骤3:在新的cpp文件中添加:#include <Win ...
- Python开发环境Wing IDE如何使用调试功能
在使用Wing IDE开始调试的时候,需要设置断点的行,读取GetItemCount函数的返回.这可以通过单击行并选择Break工具栏条目,或通过单击行左边的黑色边缘.断点应该以实心红圈的形式出现: ...
- [转] eclipce使用vim 开启装逼模式
原文:http://blog.csdn.net/fatal360/article/details/12321613 1.在eclipse中使用vi模式的插件Vrapper打开eclipse,在Help ...
- uLua学习之数据交互(三)
前言 在上节中,大概谈了一下如何在lua脚本中调用unity3d中的方法来创建游戏物体,这只是很小的一个方面,uLua的优势在于对unity3d中C#语言的扩展和定制.那么如何扩展和定制呢?其中的数据 ...
- Samuraiwtf-解决sshd安装启动
东西没仔细看就给别人了,具体是系统默认的sshd怎么都起不来.于是重新安装一下,过程如下 root@samuraiwtf:~# netstat -nlt Active Internet connect ...
- IOS 强指针(strong)和弱指针(weak)
// strong 强指针 // weak 弱指针 // ARC, 只要对象没有强指针就会自动释放 // OC中默认都是强指针
- IOS UIActivityIndicatorView动画
● 是一个旋转进度轮,可以用来告知用户有一个操作正在进行中,一般 用initWithActivityIndicatorStyle初始化 ● 方法解析: ● - (void)startAnimating ...