二十四点

Posted pw126046

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了二十四点相关的知识,希望对你有一定的参考价值。

技术图片

 

本来想用后缀表达式,但是感觉代码太长了,算式也不复杂就懒得写,就模拟了下 过程,思路很简单,算两趟,第一次算乘除,第二次算加减

import java.util.LinkedList;
import java.util.Scanner;

/**
 * @Auther: Pengwen
 * @Date: 2019/12/8 21:29
 * @Description:
 */
public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int n = scanner.nextInt();
        LinkedList<Character> op = new LinkedList<>();
        LinkedList<Integer> number = new LinkedList<>();
        String str;
        while (n-- != 0) {
            char[] chars = scanner.next().toCharArray();
            for (int i = 0; i < chars.length; i++) {
                switch (chars[i]) {
                    case ‘x‘: {
                        number.add(number.removeLast() * (chars[i + 1] - ‘0‘));
                        i++;
                        break;
                    }
                    case ‘/‘: {
                        number.add(number.removeLast() / (chars[i + 1] - ‘0‘));
                        i++;
                        break;
                    }
                    case ‘+‘: {
                        op.add(chars[i]);
                        break;
                    }
                    case ‘-‘: {
                        op.add(chars[i]);
                        break;
                    }
                    default: {
                        number.add(chars[i] - ‘0‘);
                    }
                }

            }

            for (Character aChar : op) {
                if (aChar == ‘+‘) {
                    number.addFirst(number.removeFirst() + number.removeFirst());
                } else {
                    number.addFirst(number.removeFirst() - number.removeFirst());
                }
            }

            if(number.getFirst()==24)
                System.out.println("Yes");
            else
                System.out.println("No");
            number.clear();
            op.clear();
        }
    }
}

 

 

以上是关于二十四点的主要内容,如果未能解决你的问题,请参考以下文章

二十四点游戏

201903-2 二十四点

Scala开发二十四点游戏

CSP201903-2二十四点

[LeetCode] 24 Game 二十四点游戏

ccf 201903-2 二十四点 python