I Love Military Chess |
||
Accepted : 45 | Submit : 141 | |
Time Limit : 1000 MS |
Memory Limit : 65536 KB |
题目描写叙述陆军棋,又称陆战棋,简称军棋。是中国近代的一种两人棋类,设计依据军队中的军阶。 每一方有25枚棋子。先夺得对方军旗者为胜。
胜负一览 输入多组測试数据,每组数据占一行 1 表示司令 2 表示军长 3 表示师长 4 表示旅长 5 表示团长 6 表示营长 7 表示连长 8 表示排长 9 表示工兵 M 表示地雷 B 表示炸弹 F 表示军旗 输出对于每组数据输出一行,为两人的官阶比較结果 例子输入1 2 B M 9 1 B F 1 F M 1 F 1 例子输出1 0 -1 Bingo Bingo Error Error
第二次小组赛,这次选题是湘潭市13年的比赛题。这次我们也仅仅做出了三个题。感觉两个还是模拟的题,一个题是穷举过的。。。 哎。。 模拟感觉就是要模拟题目所给的题意,要先把题目看完。题意搞懂,感觉一般题目会非常长,要认真分析一下。哪些状态比較特殊的我们就优先考虑,把题目给的情况都考虑到就差点儿相同啦; 以下是ac的代码: #include <stdio.h> #include <cstring> int main() { char a,b; while(scanf("%c %c",&a,&b)!=EOF) { getchar(); if(a=='M' || a=='F')//这就是出错的情况 { printf("Error "); continue; } else if(b=='F')//获胜的情况 { printf("Bingo "); continue; } else if(a=='B'||b=='B')//两方都消失的情况 { printf("0 "); continue; } else if(b=='M')//对是M(地雷)分情况考虑 { if(a=='9') { printf("1 "); continue; } else if(a=='B') { printf("0 "); continue; } else { printf("-1 "); continue; } } else if(a>'0'&&a<'10'&&a<b)//比較大小,普通的情况 { printf("1 "); continue; } else if(a>'0'&&a<'10'&&a>b) { printf("-1 "); continue; } else if(a==b) { printf("0 "); continue; } } return 0; }感觉这道题应该是去年的签到题,能做出来的还仅仅是这些简单题啊,能把如今自己能做出来的题目都做出来就不错啦! ! 。加油!!
|