91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 5.16MB
    文件類型: .rar
    金幣: 2
    下載: 0 次
    發布日期: 2024-01-30
  • 語言: C/C++
  • 標簽: 智力拼圖??A*??C++??

資源簡介

自動生成可解拼圖問題,并用A*算法給出自動完成的步驟。。另外還有暴力搜索的代碼

資源截圖

代碼片段和文件信息

#include
#include
#include
#include
#include
using?namespace?std;
const?int?col?=?3;
const?int?vol?=?3;
//int?pingtu[vol][col]?=?{012358647};
int?pingtu[vol][col]?=?{021354867};
int?correct[vol][col]?=?{012345678};
set?visited;
int?state_count?=?0;
stack?ptstack;
class?ptstate{
public:
int?currentCost;//當前實際代價
int?guessCost;//當前實際代價+估計代價
int?state;
ptstate(int?_currentCost=0int?_guessCost=0int?_state=0):currentCost(_currentCost)guessCost(_guessCost)state(_state){};
ptstate(ptstate?&_ptstate){
currentCost?=?_ptstate.currentCost;
guessCost?=?_ptstate.guessCost;
state?=?_ptstate.state;
}
void?setState(int?_currentCostint?_guessCostint?_state){
currentCost?=?_currentCost;
guessCost?=?_guessCost;
state?=?_state;
}
};
typedef?struct?openListEle{
ptstate?pts;
openListEle?*next;
openListEle?*pre;//指向上一個狀態,而非上一個節點
void?addNext(openListEle?*ole){
if(ole?==?NULL)
return;
ole->next?=?this->next;
this->next?=?ole;
ole->pre?=?this;
}
}openListEle;
//anounce
void?printPingTu(int[vol][col]);
void?printPingTu(int);
void?getKeJiePingTu(int[vol][col]);
long?long?makeInt(int[vol][col]);
bool?checkright(int[vol][col]int[vol][col]);
void?pingtuAstar(int[vol][col]int[vol][col]);
bool?pingtuSearch(int[vol][col]);
int?getGuessCostBetweenTwoState(int[vol][col]int[vol][col]);
void?deleteOpenListEle(openListEle*openListEle*);

//acomplish
void?pingtuAstar(int?pt[vol][col]int?correct[vol][col]){
visited.clear();
//判斷是否是正確狀態
int?correctStateInt?=?makeInt(correct);
if(correctStateInt?==?makeInt(pt)){
cout<<“已是正確狀態“< return;
}
//初始化頭節點
openListEle?*openList?=?new?openListEle;
openList->next?=?NULL;
openList->pre?=?NULL;
//將初始狀態加入openlist
openListEle?*startEle?=?new?openListEle;
startEle->pts.setState(00makeInt(pt));
openList->addNext(startEle);

openListEle?*finalEle?=?new?openListEle;
finalEle?=?NULL;
while(true){
if(finalEle?!=?NULL)
break;
//找到openlist中代價最小的
openListEle?*minEleP?=?openList->next;
openListEle?*minEle?=?NULL;
int?minCost?=?-1;
int?minElePCount?=?0;
while(minEleP!=NULL){
if(minCost?==?-1?||?minEleP->pts.guessCost minCost?=?minEleP->pts.guessCost;
minEle?=?minEleP;
}
minElePCount++;
minEleP?=?minEleP->next;
}
if(minEle?==?NULL?||?minEle->pre?==?NULL)
break;
//計算以當前狀態的可變狀態的guessCost
int?tmpPt[vol][col];
int?data?=?minEle->pts.state;
for(int?i=vol-1;i>=0;--i){
for(int?j=col-1;j>=0;--j){
tmpPt[i][j]?=?data%10;
data?=?data/10;
}
}
int?zi?=?0zj?=?0;
for(int?i=0;i for(int?j=0;j if(tmpPt[i][j]?==?vol*col-1){
zi?=?i;
zj?=?j;
break;
}
}
int?offseti[4]?=?{-1010};
int?offsetj[4]?=?{010-1};
for(int?i=0;i<4;++i){
int?ti?=?zi+offseti[i];
int?tj?=?zj+offsetj[i];
if(ti<0?|

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----

?????文件???23330816??2013-12-20?15:49??pingtukejie\ipch\pingtukejie-55ca292b\pingtukejie-fe7f9565.ipch

?????文件???????3223??2013-12-17?17:12??pingtukejie\pingtukejie\pingtukejie.vcxproj

?????文件????????940??2013-12-17?17:12??pingtukejie\pingtukejie\pingtukejie.vcxproj.filters

?????文件????????143??2013-12-17?16:49??pingtukejie\pingtukejie\pingtukejie.vcxproj.user

?????文件????????544??2013-12-21?11:24??pingtukejie\pingtukejie\Release\cl.command.1.tlog

?????文件???????7044??2013-12-21?11:24??pingtukejie\pingtukejie\Release\CL.read.1.tlog

?????文件????????294??2013-12-21?11:24??pingtukejie\pingtukejie\Release\CL.write.1.tlog

?????文件???????1194??2013-12-21?11:24??pingtukejie\pingtukejie\Release\link.command.1.tlog

?????文件???????2260??2013-12-21?11:24??pingtukejie\pingtukejie\Release\link.read.1.tlog

?????文件????????454??2013-12-21?11:24??pingtukejie\pingtukejie\Release\link.write.1.tlog

?????文件????????448??2013-12-21?11:24??pingtukejie\pingtukejie\Release\mt.command.1.tlog

?????文件????????720??2013-12-21?11:24??pingtukejie\pingtukejie\Release\mt.read.1.tlog

?????文件????????260??2013-12-21?11:24??pingtukejie\pingtukejie\Release\mt.write.1.tlog

?????文件????????381??2013-12-21?11:24??pingtukejie\pingtukejie\Release\pingtukejie.exe.intermediate.manifest

?????文件?????????51??2013-12-21?11:24??pingtukejie\pingtukejie\Release\pingtukejie.lastbuildstate

?????文件???????2754??2013-12-21?11:24??pingtukejie\pingtukejie\Release\pingtukejie.log

?????文件?????290816??2013-12-21?11:24??pingtukejie\pingtukejie\Release\vc100.pdb

?????文件?????803283??2013-12-21?11:24??pingtukejie\pingtukejie\Release\wq.obj

?????文件???????7909??2013-12-21?11:24??pingtukejie\pingtukejie\wq.cpp

?????文件????8343552??2013-12-21?11:26??pingtukejie\pingtukejie.sdf

?????文件????????900??2013-12-17?16:49??pingtukejie\pingtukejie.sln

????..A..H.?????11776??2013-12-21?11:26??pingtukejie\pingtukejie.suo

?????文件??????19968??2013-12-21?11:24??pingtukejie\Release\pingtukejie.exe

?????文件?????494592??2013-12-21?11:24??pingtukejie\Release\pingtukejie.pdb

?????目錄??????????0??2013-12-20?15:49??pingtukejie\ipch\pingtukejie-55ca292b

?????目錄??????????0??2013-12-21?11:24??pingtukejie\pingtukejie\Release

?????目錄??????????0??2013-12-20?15:49??pingtukejie\ipch

?????目錄??????????0??2013-12-17?17:12??pingtukejie\pingtukejie

?????目錄??????????0??2013-12-21?11:24??pingtukejie\Release

?????目錄??????????0??2013-12-21?11:26??pingtukejie

............此處省略3個文件信息

評論

共有 條評論