main.cpp

来自「一个833分酒问题的求解」· C++ 代码 · 共 42 行

CPP
42
字号
#include "App.h"
#include "Recursion.h"
#include "State.h"
#include <iostream>
#include <iterator>
#include <algorithm>
#include <string>
using namespace std;

int main()
{
	//int n;
	//cout << "steps expected to solve: ";
	//cin >> n;
	//const string NOSOLUTION("No Solution!");
	State start,fin;
	start.SetState(0x08800000);				// 初始状态
	start.SetProc(0);								// 初始步数为0
	fin.SetState(0x00004444);				// 结束状态
	fin.SetProc(25);									// 结束时步数。说明:起初程序想写成输入一个期望的步数,程序给出该步数下的解决方案
//	fin.SetProc(n);									// 但写到后面感觉这样没有什么意义,但还是保持了最开始时的写法
	App app;
	app.StateInit(start, fin);
	Recursion solve(app);
	if (!app.Valid(start))
	{
		//cout << NOSOLUTION << endl;
	}
	else
	{
		app.Memorize(start);
		if (app.Do(start) || solve.trythis(start))
		{
		}
		else
		{
			app.Undo(start);
			//cout << NOSOLUTION << endl;
		}
	}
	return 0;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?