XTUOJ 1176 I Love Military Chess(模拟)

2023-10-26



I Love Military Chess

Accepted : 45   Submit : 141
Time Limit : 1000 MS  

Memory Limit : 65536 KB 

 

题目描述

陆军棋,又称陆战棋,简称军棋,是中国近代的一种两人棋类,设计根据军队中的军阶。每一方有25枚棋子,先夺得对方军旗者为胜。
棋子
每一方的棋子为25枚,包括:

军阶高低 棋子名称 各方枚数 特殊能力
1 司令 1
2 军长 1
3 师长 2
4 旅长 2
5 团长 2
6 营长 2
7 连长 3
8 排长 3
9 工兵 3 铁路上格数不限并可转弯,攻击胜过地雷
M 地雷 3 不能移动,胜过其他一切攻击棋子,工兵/炸弹除外
B 炸弹 2 遇到敌方棋子皆同归于尽,军旗也不例外
F 军旗 1 不能移动,被攻击则拥有者输掉游戏

胜负一览
司令 > 军长 > 师长 > 旅长 > 团长 > 营长 > 连长 > 排长 > 工兵
炸弹与任何棋子相遇时,双方都消失
工兵 > 地雷
地雷 > 除炸弹和工兵以外的任何子粒
题目要求
请你帮忙判断两个棋子相碰时,谁出局。

输入

多组测试数据,每组数据占一行
每行有两个数字或字母,之间用空格隔开,表示前者经过移动,与后者相碰。

1 表示司令
2 表示军长
3 表示师长
4 表示旅长
5 表示团长
6 表示营长
7 表示连长
8 表示排长
9 表示工兵
M 表示地雷
B 表示炸弹
F 表示军旗

输出

对于每组数据输出一行,为两人的官阶比较结果
1 表示前者官阶比后者大
-1 表示前者官阶比后者小
0 表示两人同归于尽
Error 表示出错(军旗和地雷不能主动移动)
Bingo 表示前者获得胜利(扛取对方军旗)

样例输入

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\n");
           continue;
       }
       else if(b=='F')//获胜的情况
       {
           printf("Bingo\n");
           continue;
       }
       else if(a=='B'||b=='B')//双方都消失的情况
        {
            printf("0\n");
            continue;
        }
       else if(b=='M')//对是M(地雷)分情况考虑
       {
           if(a=='9')
           {
               printf("1\n");
               continue;
           }
           else if(a=='B')
           {
               printf("0\n");
               continue;
           }
           else
           {
               printf("-1\n");
               continue;
           }
       }
      else if(a>'0'&&a<'10'&&a<b)//比较大小,普通的情况
        {
            printf("1\n");
            continue;
        }
      else if(a>'0'&&a<'10'&&a>b)
        {
            printf("-1\n");
            continue;
        }
     else if(a==b)
        {
            printf("0\n");
            continue;
        }
    }
    return 0;
}
感觉这道题应该是去年的签到题,能做出来的还只是这些简单题啊,能把现在自己能做出来的题目都做出来就不错啦!!!加油!!

 

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

XTUOJ 1176 I Love Military Chess(模拟) 的相关文章

随机推荐

  • linux AIO (异步IO) 那点事儿

    在高性能的服务器编程中 IO 模型理所当然的是重中之重 需要谨慎选型的 对于网络套接字 我们可以采用epoll 的方式来轮询 尽管epoll也有一些缺陷 但总体来说还是很高效的 尤其来大量套接字的场景下 但对于Regular File 来说
  • 机器学习中的方差与偏差

    方差与偏差的定义 方差 不同的训练数据集训练出的模型输出值之间的差异 偏差 用所有可能的训练数据集训练出的所有模型的输出的平均值与真实模型的输出值之间的差异 方差与偏差的数学公式 首先 以回归为例 模型的期望预测指针对不同数据集D 模型对样
  • (三)STM32基础——GPIO介绍

    目录 GPIO简介 GPIO基本结构 GPIO位结构 输入部分 输出部分 推挽输出模式 开漏输出 编辑 开漏复用输出 编辑 八种输入输出模式 浮空 上拉 下拉输入 编辑 模拟输入 开漏 推挽输出 复用开漏 复用推挽输出 GPIO寄存器 GP
  • 【Spark ML】第 3 章:监督学习

    大家好 我是Sonhhxg 柒 希望你看完之后 能对你有所帮助 不足请指正 共同学习交流 个人主页 Sonhhxg 柒的博客 CSDN博客 欢迎各位 点赞 收藏 留言 系列专栏 机器学习 ML 自然语言处理 NLP 深度学习 DL fore
  • 【论文精读】The Missing Link: Finding label relations across datasets

    一 背景 概要 和之前其他论文工作不同的是 论文的主要目的是探究不同数据集间标签的关系 而不是将其合并 论文中提到的关系是identity parent child overlap 为了探究这些关系 提出了几种方法 基于language 基
  • 一文实现:在python中调用matlab程序,保姆级安装windows环境下的matlab.engine教程

    一 前言 我最近在做一个基于图像融合的目标检测工程 我经常用matlab去研究和创新新型的图像融合算法 因为matlab有着python所不可比拟的数据可视化功能和大量的滤波分解框架包 在目标检测等涉及到神经网络的程序编写上 python又
  • 机器学习

    学习目标 了解什么是EM算法 知道极大似然估计 知道EM算法实现流程 一 初识EM算法 EM算法也称期望最大化 Expectation Maximum 简称EM 算法 它是一个基础算法 是很多机器学习领域算法的基础 比如隐式马尔科夫算法 H
  • 2、TCP、多进程并发、多线程并发(linux网络编程)

    三次握手和四次挥手的过程都是在内核实现的 三次握手 通信的时候不再需要SYN标识位了 只有在请求连接的时候需要SYN标识位 传输数据的时候的随机序号seq就是最近一次对方发送给自己的ACK的随机序号值 而发给对方的ACK就是上次刚刚发给对方
  • JDK安装配置教程

    JDK简介 Java Development Kit JDK 是 Sun 公司 已被 Oracle 收购 针对 Java 开发员的软件开发工具包 自从 Java 推出以来 JDK 已经成为使用最广泛的 Java SDK Software d
  • Windows10下安装Git

    Git是一个开源的分布式版本控制系统 可以有效 高速的处理从很小到非常大的项目版本管理 具体安装步骤如下 第一步 先从官网下载最新版本的Git 官网地址 https git scm com downloads 点击上图中表示的地方进行下载
  • 如何修改安卓系统为自己的云服务器,安卓手机改装云服务器

    安卓手机改装云服务器 内容精选 换一换 本节操作介绍华为云上云服务器的跨账号跨区域迁移 建议采用镜像迁移方式 服务器迁移的常见场景与常用的迁移方式请参考迁移的背景知识 跨账号跨区域迁移的方法请参考方案介绍常见的服务器迁移场景包括物理服务器与
  • 【论文精读】Grounded Language-Image Pre-training(GLIP)

    一 背景 https arxiv org abs 2112 03857 https github com microsoft GLIP 这篇论文做的任务是phrase grounding 属于visual grounding的一种 phra
  • MySQL 修改默认值

    alter TABLE tableName alter COLUMN columnName set default defaultValue
  • 电阻式湿度传感器原理

    电阻式湿度传感器是利用湿敏元件的电气特性 如电阻值 随湿度的变化而变化的原理进行湿度测量的传感器 湿敏元件一般是在绝缘物上浸渍吸湿性物质 或者通过蒸发 涂覆等工艺制各一层金属 半导体 高分子薄膜和粉末状颗粒而制作的 在湿敏元件的吸湿和脱湿过
  • 大模型应用落地实践:2大路径、3大痛点、5大革命、6大预判!

    省时查报告 专业 及时 全面的行研报告库 省时查方案 专业 及时 全面的营销策划方案库 免费下载 2023年8月份全网热门报告合集 ChatGPT提词示例 让你的ChatGPT聪明100倍 超百页干货资料 AI应用的难点 痛点与未来 202
  • 双端队列,以顺序表实现双端队列,在队头和队尾添加删除元素

    include
  • opencv之kmeans原理与分割实例

    opencv之K Means原理与实现方法 C 和python版本 KMeans原理 今天记录一下opencv中kmeans中的原理以及图像分割的一个实例 K Means是对数据进行分类的算法 属于无监督学习的一种 首先需要确定对图像进行类
  • 关于QT多界面切换

    1 新增一窗体文件 会自动生成ui1 cpp ui1 h ui1 ui这三个文件 可以进行设计 绑定ui中的控件与数据模型 比如ui gt lable setText string 2 再增加一个UI文件 ui2 也会生成相应的 同上 3
  • 原本是list类型,pandas读入后变成str、obejct等其他的类型,恢复成list,并进行数据炸裂explode操作

    文章目录 本文章拟解决问题 不是这些问题请绕路 一 需求 二 操作步骤 1 从数据库中读入数据 读入的原始数据如图 2 将数据炸裂 将JSON列表拆分 一个JSON对象一行 1 具体的代码过程 踩坑 因为pandas读入数据 将 JSON列
  • XTUOJ 1176 I Love Military Chess(模拟)

    I Love Military Chess Accepted 45 Submit 141 Time Limit 1000 MS Memory Limit 65536 KB 题目描述 陆军棋 又称陆战棋 简称军棋 是中国近代的一种两人棋类 设