use 3D version to calculate how much water the model can contain

this problem need use dfs,from the edge part which mustn't be answer,for the edge cannot contain water,so push these edge part into queue first.because we need dfs blocks from the lower part to the higher,so need special priority_queue greater type,we can grep block from lower to higher.

MAIN THOUGHT:

the main thought is sea level,use an increasing value represent sea level,

a queue store the block been visited

STORE TOOL:

priority_queue<pair<int,int>,greater>

vector<vector<bool>> visited 

sea [record now sea level height]

res [record total answer] 

ATTENTION:

initialize vector use = or directly follow {} also can be.

priority_queue need use push,if push type pair<int,int> need use {} wrap two value

 

posted on 2020-10-28 16:21  黑暗尽头的超音速炬火  阅读(50)  评论(0)    收藏  举报