lianliankan.h
view plaincopy to clipboardprint?
#ifndef LIANLIANKAN_H_
#define LIANLIANKAN_H_
const int LEN = 8; // 单元数
struct pos
{
pos(){}
pos(int _x, int _y) : x(_x), y(_y){}
int x;
int y;
};
struct unit
{
unit(){}
pos parent;
int cross;
int distance;
};
class LianLianKan
{
public:
LianLianKan();
~LianLianKan();
void RandomMap();
int Dist(pos &x, pos &y);
int GetMinCrossing(pos &x);
int GetMinDistance(pos &x);
void SetMinCrossing(pos &x, int c);
void SetMinDistance(pos &x, int d);
void SetParent(pos &x, pos p);
void Updata(pos &x, pos &y);
bool Find(pos &p);
void UnitMapInit(pos &p);
bool InUnitMap(pos &p);
void DisplayPath(pos &p);
bool GameProcess(pos& first, pos& second);
void DisplayMap();
void Run();
private:
unit unitmap[LEN + 2][LEN + 2]; // 帮助地图
};
#endif // LIANLIANKAN_H_
lianliankan.cpp
view plaincopy to clipboardprint?
#include "stdafx.h"
#include "lianliankan.h"
#include <iostream>
#include <stdlib.h>
#include <time.h>
using namespace std;
int map[LEN + 2][LEN + 2] = {
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,