世界名畫陳列館問題

2021-07-08 15:16:21 字數 1093 閱讀 6572

#include 

#include

#include

#include

using

namespace

std;

const

int max = 10;

int best[max][max]; //機械人位置

int m, n; //矩陣為 m * n

int bestk; //機械人個數

int dx = ; //原位置及四個方向

int dy = ;

void print(int a[max][max])

}class node

//機械人個數小的先出佇列

bool

operator

< (const node &node) const

};priority_queueq;

template

void copy2(type src[max][max], type des[max][max])

//在i, j位置設定乙個機械人,並改變周圍陳列室受監視的狀態

//向優先佇列中加入結點

void change(node enode, int i, int j)

while(now.board[now.i][now.j] && now.i<=n)

}q.push(now);

}void search()

}for(a=0; a<=m+1; a++) //最外圈一層為1

C 世界名畫陳列演算法

using system using system.collections.generic using system.linq using system.text namespace 5 hou 0,1 7 hou 0,0 1 hou 0,2 1 hou 1,1 1 for int i 0 i n ...

世界名畫陳列館問題

世界名畫陳列館問題 世界名畫陳列館由m n m times n m n個排列成矩形陣列的陳列室組成。為了防止名畫被盜,需要在陳列室中設定機械人哨位。每個警衛機械人除了監視它所在的陳列室外,還可以監視與它所在的陳列室相鄰的上下左右四個陳列室。試設計乙個安排警衛機械人哨位的演算法,使名畫陳列館中每乙個陳...

世界名畫陳列館問題

世界名畫陳列館問題 回溯法 此為 計算機演算法設計與分析 第5版 王曉東 中習題作業 1.陣列界線沒有考慮清楚,出現越界 在change和restore只考慮i 1和j 1有沒有出界,忘了考慮i 1和j 1有沒有出界 2.找到未被監視的陳列館迴圈中,對最後乙個房間 m 1,n 1 考慮不足,最終改為...