201903-2 二十四点

【题目背景】

二十四点是一款著名的纸牌游戏,其游戏的目标是使用3个加减乘除运算使得4张纸牌上数字的运算结果为24。

【题目描述】

定义每一个游戏由4个从1-9的数字和3个四则运算符组成,保证四则运算符将数字两两隔开,不存在括号和其他字符,运算顺序按照四则运算顺序进行。其中加法用符号 +表示,减法用符号  -表示,乘法用小写字母 x表示,除法用符号 /表示。在游戏里除法为整除,例如2/3=0,3/2=1,4/2=2。

老师给了你n个游戏的解,请你编写程序验证每个游戏的结果是否为24。

【输入格式】

从标准输入读入数据。

第一行输入一个整数n,从第2行开始到第n+1行中,每一行包含一个长度为7的字符串,为上述的24点游戏,保证数据格式合法。

【输出格式】

输出到标准输出。

包含n行,对于每-一个游戏,如果其结果为24则输出字符串yes,否则输出字符串no。

【样例1输入】

10

9+3+4x3

5+4x5x5

7-9-9+8

5x6/5x4

3+5+7+9

1x1+9-9

1x9-5/9

8/5+6x9

6x7-3x6

6x4+4/5

【样例1输出】

yes

no

no

yes

yes

no

no

no

yes

yes

【样例1解释】

9+3+4x3=24

5+4x5x5=105

7-9-9+8=-3

5x6/5x4=24

3+5+7+9=24

1x1+9-9=1

1x9-5/9=9

8/5+6x9=55

6x7-3x6=24

6x4+4/5=24

import java.util.scanner;

import java.util.stack;

public class main {

public static void main(string[] args) {

scanner sc = new scanner(system.in);

int n = sc.nextint();

sc.nextline();

while (n > 0) {

string str = sc.nextline();

stack number = new stack<>();

char[] ch = str.tochararray();

int sum = 0;

int i = 0;

/*

* for (char c : ch) { system.out.println(c); }

*/

while (i < 7) {

if (i == 0) {

number.push(ch[i] - '0');

i++;

}else {

if (ch[i] == 'x') {

i++;

int left = number.pop();

number.push(left * (ch[i] - '0'));

i++;

//system.out.println("xxxxxxxx");

}else {

if (ch[i] == '/') {

i++;

int left = number.pop();

number.push(left / (ch[i] - '0'));

i++;

//system.out.println("///");

}else {

if (ch[i] == '-') {

i++;

number.push(-(ch[i] - '0'));

i++;

// system.out.println("--------------");

}else {

i++;

number.push(ch[i] - '0');

i++;

// system.out.println("+++++++++++");

}

}

}

}

}

sum = number.pop();

//system.out.println(sum);

while (!number.empty()) {

int right = number.pop();

sum += right;

// system.out.println(right);

// system.out.println(sum);

}

// system.out.println(sum);

if (sum == 24) {

system.out.println("yes");

} else {

system.out.println("no");

}

n--;

}

}

}

ccf计算机认证考试题集,CCF计算机职业认证考试相关推荐

  1. ccf计算机认证考试题集,【计算机本科补全计划】CCF计算机职业资格认证 2017-03 试题初试...

    正文之前 我在之前的文章中提到过,我的老师要求我的CCF 考试考个280分来打个底,(没错,我就是那个横跨考研.工作.保研三大领域的男人)相当于是测试下我的能力,所以虽然不知道近期有没有相关的考试,但 ...

  2. 高级计算机职称考试题,高级职称计算机考试试题

    计算机硕士在读 那么,现在你想考的学校到底还考不考408?有多少985学校考408?有多少211?又有哪些研究所? 点击领取>>>软考16本电子版官方教材 & 36本辅导教材 ...

  3. 计算机三级考试题库网络,计算机三级网络试题及答案解析

    计算机三级网络试题及答案解析 关于2016年计算机等级考试时间是3月26日-29日,以下小编特意为大家整理出计算机三级网络考试题,希望对大家的复习有帮助! 1)FDDI采用一种新的编码技术,是____ ...

  4. 2017计算机等级考试题,2017年计算机二级考试题库及答案

    2017年计算机二级考试题库及答案 A.Load B.CliCk C.Unload D.GotFoCus 23.对于循环队列,下列叙述中正确的是( ). A.队头指针是固定不变的 B.队头指针一定大于 ...

  5. 计算机 游戏第24级,全国计算机一级考试题库-全国计算机等级考试题(24页)-原创力文档...

    全国计算机一级考试题库(附答案) -选择题: 1微型计算机硬件系统中最核心的部件是(). A.主板B.CPU C内存储器D.I/O设备 2. 案:C A.速度B.可靠性C.分辨率D.精度 下列术语中, ...

  6. 计算机初级考试题库网络管理,计算机基础考试题库(含答案)【精】.doc

    计算机基础考试题库(含答案)[精].doc 快乐 大学计算机基础 试题题库及答案 一.单选题练习 1.完整的计算机系统由( C )组成.A.运算器.控制器.存储器.输入设备和输出设备B.主机和外部设备 ...

  7. 计算机学考试题视频教程,职称计算机考试模拟试题

    人事考试教育网 教程列表: 人事网 职称计算机 金山文字2005 人事网 职称计算机 中文WindowsXP操作系统 人事网 职称计算机 WPSOffice办公组合中文字处理 人事网 职称计算机 Po ...

  8. 医疗人员计算机职称考试题库,全国计算机职称考试题库.pdf

    第 1 页全国计算机职称考试题库 职称考试 WORD 题库(带操作答案) 一.Word2003 基础: 1.要求:⑴利用开始菜单打 WORD :开始→所有程序→Microsoft office wor ...

  9. 2011年计算机一级考试题,2011年计算机一级考试模拟试题及参考答案(1)

    2011年计算机一级考试模拟试题及参考答案(1) 来源:Thea发布时间:2011-04-25 [1] 数据111H 的最左边的1 相当于2 的( )次方.[参考答案A] [A] 8 [B] 9 [C ...

最新文章

  1. arrays must all be same length
  2. django使用postgresql时提示主键冲突
  3. pycharm配置python解释器_Python大佬手把手教你进行Pycharm活动模板配置
  4. Springboot@Configuration和@Bean详解
  5. 4. 连续时间鞅(REN)
  6. 准备入门IC的全局观念系列-下
  7. ES6系列之Set Map
  8. C++ 常用算数生成算法
  9. mysql数据库的三级模式_2016年计算机三级MySQL数据库试题
  10. SH760模态分析-多种解析与数字计算方法
  11. 此次边路调整系统推荐射手走哪路_王者荣耀:廉颇“史诗级”改动,成吉思汗等射手降温!...
  12. 【大数相乘】LeetCode 43. Multiply Strings
  13. Silverlight编译过程
  14. tomcat版本号进行隐藏或者删除
  15. 天外键盘映射工具(适合魔兽真三改键)
  16. 医药之家:仿制药市场加速洗牌,多家药企陆续通过一致性评价
  17. maven的wagon-maven-plugin插件详解
  18. 网易游戏岗位大揭秘——我在网易做测试开发(QA)
  19. 从“闪电战”到全面战:荣耀开启“吓人的技术”2.0时代
  20. 苹果 macOS 13 开发者预览版 Beta 11(内部版本号:22A5373b)发布

热门文章

  1. 使用wpf引入资源文件,RichTestBox加载rtf文件
  2. linux 安装python2.7
  3. web前端页面性能优化SEO优化
  4. 2015山东毕业生怎样进行网上报道(报到证)?
  5. 利用random生成1-100里面的随机数,使用程序猜出这个数是多少
  6. 制作下拉菜单(二级菜单)
  7. 软件项目开发分工贡献占比
  8. 阿里巴巴图标,font-family字体样式
  9. Dialog(二)------列表Dialog
  10. 教你用JAVA设计一个飞机大战的游戏