a - eight
看起來好像在bzoj見過的?狀壓爆搜?一般好像爆搜都是用bfs的,有沒有什麼是使用高階的搜尋方法呢?
h - gap bfs+hash
應該想到bfs的,畢竟每一步都只有4種選法,最多24步?4^24肯定是太大了的,怎麼就可以保證bfs可以得到結果呢?還是說要充分理解搜尋的上界是乙個很鬆的上界?用hash判重我倒是可以理解。
hash的部落格:
搞著搞著就去看hash了?
i - a計畫
在hdu刷過,當時用的dfs刷表法過的,應該可以用優先佇列的刷表bfs提高效率。
/*
1.嘗試使用刷表法解決,bfs會不會更快呢?
2.原來傳送到對應位置是指真的對應位置而不是什麼隔壁的傳送門,是題目的歧義
3.scanf讀空行好像沒有問題的樣子
4.相對位置是傳送門對面exo me?不對,好像是因為可以無限傳送所以錯了,去掉flashin再試一次
5.dfs版本是不是可以剪枝?
6.第2的改了居然沒有修改座標偏移
*/#includeusing namespace std;
int n,m,t;
int n,m;
char g[3][12][12];
bool vis[3][12][12];
int dis[3][12][12];
void dfs(int df,int di,int dj,int d,int flashin=0)
printf("\n");
}*/if(g[df][di][dj]=='#')
}if(di0)
}if(dj0)
if(di0)
if(dj}
}} void solve()
if(g[ff][i][j]=='p')}}
} //printf("sf,si,fj=%d,%d,%d\n",sf,si,sj);
dfs(sf,si,sj,0);
if(dis[pf][pi][pj]<=t)
else }
int main()
//scanf("%s",&g[0][0]);
for(int i=0;isolve();
}}
kuangbin帶你飛專題
kuangbin帶你飛 專題一 簡單搜尋 kuangbin帶你飛 專題二 搜尋高階 kuangbin帶你飛 專題三 dancing links kuangbin帶你飛 專題四 最短路練習 kuangbin帶你飛 專題五 並查集 kuangbin帶你飛 專題六 最小生成樹 kuangbin帶你飛 專題...
kuangbin帶你飛 專題十八 字尾陣列
寫了好久才把字尾陣列的專題寫完 字尾陣列就是對字串的所有字尾來搞事,通過對這些字尾排序,來得到這些字尾之前存在的關係。字尾陣列中的sa陣列 排名陣列 和height 相鄰排名lcp 有很多很有用的特性,使得在處理一些字串問題的時候很給力,比較流行的求字尾陣列的演算法有o nlogn 的倍增求法和o ...
kuangbin帶你飛 專題一 簡單搜尋 D
n m的0 1格仔,目標是全變成0 每次反轉乙個,身邊的4個都變成相反的 0變1,1變0 問最少反轉多少個,每個格仔如果翻了填1,沒翻填0 乍一看挺恐怖的,首先想到乙個格仔不可能翻轉兩次,因為反轉兩次就變回了原來的樣子,就是相當於浪費,那麼每個格仔就是翻轉或者不翻轉兩種可能,而當第一行確定下來翻轉與...