`

2011年度最变态迷宫数学题-java

 
阅读更多
import java.util.ArrayList;
/**
 * 2011年度最变态迷宫数学题
 * @author Justplay(HBJ)
 *
 */
public class Arithmetic  {
	
	private int d;
	public ArrayList<String> arithmeticArray = new ArrayList<String>();
	private int count;
	
	public Arithmetic (int deep){
		this.d = deep;
	}
	
	public void add7(int value ,int deep,boolean left,String load){//  +7 
		if(deep>d){
			System.out.println("("+deep + ")("+count + ") N此路算法过长: "+load);
			return;
		}
		int tem = value+7;
		load += "+"+7;
		String _load = load;
		deep ++;
		if(left){
			this.ride3(tem, deep,true,_load);
			this.dim5(tem, deep,true,_load);
			if(tem%2==0){
				this.divide2(tem, deep,false,_load);
			}
		}else{
			if(tem%2==0){
				if(value==2012){
					count++;
					System.out.println("-----------------------Y此路算法通行: "+load);
					this.arithmeticArray.add(load);
					return;
				}
				this.divide2(tem, deep,true,_load);
			}
		}
	}
	
	public void divide2(int value ,int deep,boolean left,String load){//  /2
		if(deep>d){
			System.out.println("("+deep + ")("+count + ") N此路算法过长: "+load);
			return;
		} 
		int tem = value /2;
		load += "/"+2;
		String _load = load;
		deep++;
		if(left){
			this.ride3(tem, deep,true,_load);
			this.dim5(tem, deep,true,_load);
			this.add7(tem, deep, false,_load);
		}else{
			if(value==2012){
				count++;
				System.out.println("-----------------------Y此路算法通行: "+load);
				this.arithmeticArray.add(load);
				return;
			}
			this.add7(tem, deep, true,_load);
		}
	}
	
	public void ride3(int value ,int deep,boolean left,String load){//X3 
		if(deep>d){
			System.out.println("("+deep + ")("+count + ") N此路算法过长: "+load);
			return;
		}
		int tem = value * 3 ;
		load += "X"+3;
		String _load = load;
		deep++;
		if(left){
			if(tem==2012){
				count++;
				System.out.println("-----------------------Y此路算法通行: "+load);
				this.arithmeticArray.add(load+"  $(deep:"+deep+")");
				return;
			}
			this.dim5(tem, deep, false,_load);
		}else{
			this.add7(tem, deep, false,_load);
			this.dim5(tem, deep, true,_load);
			if(tem%2==0){
				this.divide2(tem, deep, false,_load);
			}
		}
	}
	
	public void dim5(int value ,int deep,boolean left,String load){ //-5
		if(deep>d){
			System.out.println("("+deep + ")("+count + ") N此路算法过长: "+load);
			return;
		}
		int tem = value - 5 ;
		load += "-"+5;
		String _load = load;
		deep++;
		if(left){
			if(tem==2012){
				count++;
				System.out.println("-----------------------Y此路算法通行: "+load);
				this.arithmeticArray.add(load+"  $(深度:"+deep+")");
				return;
			}
			this.ride3(tem, deep, false,_load);
		}else{
			this.add7(tem, deep, false,_load);
			this.ride3(tem, deep, true,_load);
			if(tem%2==0){
				this.divide2(tem, deep, false,_load);
			}
		}
	}
	
	public static void main(String args[]){
		Arithmetic  a = new Arithmetic (28);
		a.add7(2011, 0, true,"");
		System.out.println("结果集合");
		for(String s :a.arithmeticArray){
			System.out.println(s);
		}
//		+7/2+7/2+7-5X3/2+7/2+7X3-5/2+7/2+7-5X3-5X3/2+7-5X3/2+7-5
//		int i = (((((((((((((2011+7)/2+7)/2+7-5)*3)/2+7)/2+7)*3-5)/2+7)/2+7-5)*3-5)*3)/2+7-5)*3)/2+7-5;
//		System.out.println(i);
	}
}

转载请注明:http://justplayoop1.iteye.com/admin/blogs/1292567
分享到:
评论

相关推荐

    数据结构课设-老鼠走迷宫游戏-java-swing

    在本项目"数据结构课设-老鼠走迷宫游戏-java-swing"中,开发者通过Java Swing构建了一个基于数据结构的游戏,让玩家控制一只老鼠在迷宫中寻找出路,同时还要避开猫的追捕并收集道具。这个项目展示了如何将编程理论与...

    maze--Java游戏三维迷宫源代码

    【Java游戏三维迷宫源代码】是一个以Java编程语言实现的项目,旨在提供一个既具有娱乐性又富有教育意义的游戏体验。在这个项目中,开发者利用Java的灵活性和强大的图形处理能力构建了一个三维迷宫,玩家可以在虚拟...

    labyrinth-java.rar_Java 数据结构_Java 迷宫_数据结构 java_迷宫 java_迷宫算法

    这个名为“labyrinth-java.rar”的压缩包文件,显然包含了一个用Java语言实现的迷宫算法示例。这个项目可以帮助我们深入理解如何利用Java来处理和解决复杂的数据结构问题,特别是与迷宫相关的路径寻找算法。 首先,...

    C++语言编写的迷宫----完整代码

    C++语言编写的迷宫----完整代码 本程序是使用C++语言编写的迷宫生成器和迷宫遍历器。在迷宫生成器中,使用随机数生成迷宫,迷宫的墙壁用“#”表示,路径用“X”表示,死路用“@”表示。用户可以输入迷宫的大小,...

    文件夹迷宫-公测版 -by 黄悟逸

    文件夹迷宫-公测版文件夹迷宫-公测版 文件夹迷宫-公测版文件夹迷宫-公测版 文件夹迷宫-公测版文件夹迷宫-公测版 文件夹迷宫-公测版文件夹迷宫-公测版 文件夹迷宫-公测版文件夹迷宫-公测版 文件夹迷宫-公测版文件夹...

    数据结构课程设计迷宫算法的实现-JAVA.doc

    数据结构课程设计迷宫算法的实现-JAVA 数据结构课程设计迷宫算法的实现是使用 JAVA 语言编写的,旨在设计一个迷宫算法的实现,提供图形用户界面来展示迷宫的大小、入口及出口位置和初始状态等,并演示走迷宫的过程...

    Java课程设计-老鼠走迷宫

    # 老鼠走迷宫(mouse-maze) ## 算法 ##### 生成迷宫算法 ```java package cn.edu.cqut.Maze; import java.io.File; import java.io.FileNotFoundException; import java.io.IOException; import java.util....

    java课程设计项目-Java语言编写的一个迷宫小游戏,涉及迷宫生成算法、深度、广度巡径等算法(源码+详细说明文档)

    java课程设计项目——Java语言编写的一个迷宫小游戏(源码+详细说明文档)java课程设计项目——Java语言编写的一个迷宫小游戏(源码+详细说明文档)java课程设计项目——Java语言编写的一个迷宫小游戏(源码+详细...

    java迷宫 java迷宫 java迷宫

    在本文中,我们将深入探讨如何使用Java编程语言创建一个迷宫游戏。首先,我们要了解迷宫游戏的基本概念,然后分析两种常见的迷宫生成算法:随机布点法和图的深度优先遍历法。接着,我们将讨论如何在游戏中实现自动...

    迷宫-----c语言编写

    【标题】:“迷宫-----c语言编写”指出这个项目是使用C语言来实现的一个迷宫求解算法。C语言是一种底层、高效的编程语言,适用于处理这类逻辑性和计算性较强的问题。 【描述】:“能完整输出路径,表示各种能走通的...

    java迷宫课程设计

    Java迷宫课程设计是一项常见的编程练习,旨在帮助初学者掌握Java编程语言以及图形用户界面(GUI)开发。在这个项目中,我们使用了JavaFX库来创建用户界面,它是一个强大的工具,提供了丰富的功能来构建现代、动态的...

    迷宫-地下迷宫-uniapp-项目源码

    这是一个uniapp H5源码【迷宫】项目完整例子,以下还有↓ 通过HBuilderX开发工具选uniapp项目可打开,可编译运行,请放心下载, 可编译多平台发布,需要自己修改处理兼容对应平台, 类似走出迷宫游戏,探索与冒险玩...

    走迷宫-----深度优先算法

    ### 走迷宫——深度优先搜索算法解析 在计算机科学与编程领域,解决迷宫问题是一种常见的算法挑战,尤其当涉及到路径寻找时。本文将深入探讨如何利用深度优先搜索(Depth-First Search,简称DFS)算法来解决迷宫...

    JAVA 实现《复杂迷宫》游戏-全部源码

    2、设定迷宫地图,包含可走的通道,不可走的墙体,还有出口位置 3、键盘的上下左右按键,来控制角色的移动 4、角色移动的算法,通道可走,遇到墙体不可走 5、走到终点,有成功通关的提示。 6、增加游戏的难度...

    Java迷宫算法 Java迷宫算法

    Java迷宫算法;Java迷宫算法;Java迷宫算法;Java迷宫算法;Java迷宫算法;Java迷宫算法;Java迷宫算法

    Java课程设计走迷宫.zip_Java课程设计走迷宫_java课程设计_paymx9_迷宫 java_迷宫Java设计

    在本Java课程设计中,我们将探讨如何利用编程技术来实现一个迷宫游戏。这个项目旨在帮助学生深化对Java编程语言的理解,特别是在问题解决、数据结构和算法应用方面。以下是关于"Java课程设计走迷宫"的主要知识点: ...

    文件迷宫------------------------文件迷宫

    文件迷宫==========================呵呵俄核讹

    Java 迷宫--随机生成迷宫地图

    一个Java小游戏,随机生成迷宫地图,可以人机交互

    java迷宫课程设计.zip

    通过java实现的迷宫课程设计。分成算法部分和界面部分,算法部分涉及到迷宫生成算法,深度优先,广度优先,运用了栈和队列等容器。界面部分采用javafx实现。有显示迷宫路线,更改迷宫大小,展示迷宫解谜动画过程。...

Global site tag (gtag.js) - Google Analytics