題面
迭代加深搜尋模板題。
注意開始時要先對桶的容量從小到大排序。
達到搜尋層數時使用完全揹包\(\text\)即可。
具體實現參考**。
#include #define itn int
#define gi gi
using namespace std;
inline int gi()
while (c >= '0' && c <= '9') x = x * 10 + c - '0', c = getchar();
return f * x;
}const int maxn = 103, maxm = 20003;
int d;//要搜尋的層數
int mb, n, m, p, q[maxn], a[maxn], ans[maxn], sum;
bool f[maxm];
inline bool check()//完全揹包check
return f[mb];
}bool dfs(int now, int hy)//迭代加深搜尋
return false;
}int main()
printf("%d", d);
for (int i = 1; i <= d; i+=1) printf(" %d", q[i]);//當前的答案
puts("");
return 0;
}
岳麓山上打水(Vijos1159)
演算法 dp 分析 這道題曾經做過的,是usaco上的一道題,其實就是個搜尋 dp,也沒什麼新鮮的,但是不知道為什麼就是老超時,只優化了乙個地方,最後乙個點通過需要1.34s program vijos1159 const maxq 20000 maxp 100 var p,q,tot,depth ...
Vijos1159 岳麓山上打水 迭代加深
vijos1159岳麓山上打水 mzoj1005打水 今天算是學到了,到一些oj上提交程式需要選擇語言,不然會炸qaq 大概是我太菜了現在才知道 1 include2 using namespace std 3const int n 100 10 4 const int m 20000 10 5 i...
vijos題解 我是打飯的
yeach 終於ac了,哈哈,耗時0ms,最快是我!我的思想跟那個假冒的陶 不同,比他那個更難理解,但效率高。但本人極菜 說不清楚。請見諒。一開始我發現這問題極像搭建雙塔那題,但又些不同,我把它修改了一下 首先要證明一下 如樣例 最小為17,不知大家有沒有發現這個17 7 6 2 2,最後乙個二是那...