CCF-201903-2 简单的二十四点

题目: 

由于时间有限, 直接截取了CCF的截图

CCF-201903-2 简单的二十四点_第1张图片

CCF-201903-2 简单的二十四点_第2张图片

CCF-201903-2 简单的二十四点_第3张图片

思路:

1. 把式子输入到字符串

2.为了操作方便, 把字符串转化为集合

3.先解决乘法除法运算

 

       步骤:判断运算符, 若为乘号, 则对乘号前后的两个数做乘法运算, 结果保存到临时变量中, 依次删除"乘号"后面的"数字"和"乘号", 把临时变量附给"乘号"前面的值. 这就完成了一次运算. 注意, 因为删除操作,使集合的下标改变了, 所以需要给迭代变量重新赋值. 继续遍历有无乘号或者除号!

       相同的方法, 处理除号.

4.再用相同的方法解决加号减号

5.此时集合中只剩下一个元素了, 即为结果

6.与24比较,输出结果

代码如下: 

import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;

public class Main {
	public static void main(String[] args) {
		
		Scanner sc=new Scanner(System.in);
		
		//字符串个数
		int n=sc.nextInt();
		
		//存储最终结果"Yes""No"
		String[] result=new String[n];
		
		for(int i=0;i list=new ArrayList();
			for(int j=0;j

 测试:

CCF-201903-2 简单的二十四点_第4张图片

 

 

你可能感兴趣的:(随便写写)