思路:做的时候两个地方理解错了,第一个事我以为龙吸了水,水就干了,其实龙是在下雨之前吸的,下雨时湖水又满了,所以湖水永远不会干;第二个是以为只要找前面一段没下雨的天吸水就可以了,其实是上一次满了之后没下雨的天吸水都可以。
代码:
#includeusing namespace std;#define ll long long#define pb push_back#define mem(a,b) memset(a,b,sizeof(a))const int N=1e6+5;set s;int a[N];int ans[N];int pre_full_pos[N];int main(){ ios::sync_with_stdio(false); cin.tie(0); int t,n,m; cin>>t; while(t--) { cin>>n>>m; for(int i=0;i >a[i]; s.clear(); mem(pre_full_pos,0); mem(ans,0); bool flag=false; for(int i=0;i