每天小練筆10 小和尚挑水(回溯法)

2021-09-07 12:41:26 字數 952 閱讀 5569

題目

某寺廟裡7個和尚:輪流挑水。為了和其它任務不能衝突。各人將有空天數列出例如以下表:

和尚1: 星期二,四;

和尚2: 星期一,六;

和尚3: 星期三,日;

和尚4: 星期五;

和尚5: 星期一,四,六;

和尚6: 星期二,五;

和尚7: 星期三,六,日;

請將全部合理的挑水時間安排表

思路 回朔法求解

回朔法即每進行一步,都試圖在當前部分解的基礎上擴大該部分解。

擴大時。首先檢查擴大後是否違反了約束條件,若不違反。則擴大之,然後繼續在此基礎上依照相似的方法進行。直至成為完整解;若違反,則放棄該步以及它所能生成的部分解,然後依照相似的方法嘗試其它可能的擴慷慨式,直到嘗試了全部的擴慷慨式。

這就是八皇后問題的簡化版本號

將八皇后的回溯遞迴函式。簡化為

void

queue(int num)

else

queue(num+1);}}

}}

完畢**為

#include 

#include

#include

#include

#include

using

namespace

std;

int time[7];

vector

table;

int cnt;

bool test(int time,int num )

return

true;

}void q_print()

else

queue(num+1);}}

}}int main()

queue(0);

return

0;}

策略模式小練筆

package com.company 實現類 趙雲 public class zhaoyun 不知道具體的方法實現,只知道某介面可以實現方法。該方法體現了高內聚低耦合。package com.company 錦囊類 public class context 使用計謀 public void ope...

管理小故事10

有三個人要被關進監獄三年,監獄長給他們三個一人乙個要求。美國人愛抽雪茄,要了三箱雪茄。法國人最浪漫,要乙個美麗的女子相伴。而猶太人說,他要一部與外界溝通的 三年過後,第乙個衝出來的是美國人,嘴裡鼻孔裡塞滿了雪茄,大喊道 給我火,給我火!原來他忘了要火了。接著出來的是法國人。只見他手裡抱著乙個小孩子,...

Python每天練習 小程式001

題目001 有四個數字 1 2 3 4,能組成多少個互不相同且無重複數字的三位數?各是多少?def one d for i in range 1,5 for j in range 1,5 for k in range 1,5 if i k and i j and j k print 總數量 len ...