這題其實超簡單,但我一開始沒看清題,以為invalid的輸入也是會出現的。
|
|
所以我最開始的版本用到了并查集,type用來標記不同union的類別(horizontal/vertical/invalid或者undefined)。在union的時候檢查和更新類別。其實和輸入只有valid的情況類似:輸入有invalid時,cnt++僅在左邊和上面的鄰居都是undefined;後者則需要都是’.’。差別是為了排除invalid,要union后記錄type。
|
|
這題其實超簡單,但我一開始沒看清題,以為invalid的輸入也是會出現的。
|
|
所以我最開始的版本用到了并查集,type用來標記不同union的類別(horizontal/vertical/invalid或者undefined)。在union的時候檢查和更新類別。其實和輸入只有valid的情況類似:輸入有invalid時,cnt++僅在左邊和上面的鄰居都是undefined;後者則需要都是’.’。差別是為了排除invalid,要union后記錄type。
|
|