僚娥 发表于 2025-6-1 21:12:13

题解:P6063 [USACO05JAN] The Wedding Juicer G

本题思路

我们只需要把每个柱子上的果汁水位设为最高果汁水位,再向四周释放果汁就可以了。最后的答案就是所有位置水的高度减原高度的和。
本题步骤


[*]我们先找到最高的一个柱子,将最高水位设为这根柱子的高度。
[*]将每个柱子上的果汁设为最高水位。
[*]在四周的果汁都会流出去,所以四周果汁最高水位设为 \(0\)。
[*]把四周的柱子放入小根堆。
[*]开始广搜。
[*]输出答案。
代码

#includeusing namespace std;const int N=1e4+3;int watter_max,ans=0;int pic,G;int fx={{1,0},{0,1},{0,-1},{-1,0}};priority_queueq;int main(){        int n,m;        cin>>m>>n;        for(int i=1;ipic;                        G=pic;                        watter_max=max(watter_max,pic);                        if(i==1||i==n||j==1||j==m) q.push(make_pair(i,j));                }        }        for(int i=1;i
页: [1]
查看完整版本: 题解:P6063 [USACO05JAN] The Wedding Juicer G