啊啊啊 WA on #5 90分代码求调

P1318 积水面积

刚码的,就是左扫一遍右扫一遍那个思路。 ```cpp #include<bits/stdc++.h> using namespace std; int h1,h2,n,a[100001],ans,wt[100001]; int main(){ cin>>n; for(int i=1;i<=n;++i) scanf("%d",&a[i]); for(int i=1;i<=n;++i){//左扫 if(a[i]>h1) h1=a[i];//更新最高点 else{ wt[i]=h1;//wt记录左扫完每一列的水量 ans+=h1-a[i]; } } for(int i=n;i>=1;--i){//右扫,从n到1 if(a[i]>h2) h2=a[i];//更新右扫的最高点 if(wt[i]>h2) ans-=wt[i]-h2;//这里不是else,直接减 } printf("%d",ans); return 0; } ```
by SamHJD @ 2022-09-23 20:25:36


看着没啥问题,我下载了样例,你看看。 输入 ``` 800 0 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 0 4 9 7 4 2 5 8 6 4 5 8 6 1 3 4 5 6 8 7 7 4 5 7 5 7 5 4 3 8 6 3 3 3 4 6 7 2 5 8 7 5 9 3 4 5 6 7 8 7 6 5 3 2 3 4 7 6 4 8 6 5 6 5 2 4 7 8 9 6 7 8 2 3 7 8 5 6 7 8 5 3 4 9 7 6 4 5 6 8 7 5 3 5 9 8 6 7 8 7 8 7 7 8 9 2 3 4 5 7 8 6 5 4 5 7 6 7 8 9 0 0 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 0 4 9 7 4 2 5 8 6 4 5 8 6 1 3 4 5 6 8 7 7 4 5 7 5 7 5 4 3 8 6 3 3 3 4 6 7 2 5 8 7 5 9 3 4 5 6 7 8 7 6 5 3 2 3 4 7 6 4 8 6 5 6 5 2 4 7 8 9 6 7 8 2 3 7 8 5 6 7 8 5 3 4 9 7 6 4 5 6 8 7 5 3 5 9 8 6 7 8 7 8 7 7 8 9 2 3 4 5 7 8 6 5 4 5 7 6 7 8 9 0 4 9 7 4 2 5 8 6 4 5 8 6 1 3 4 5 6 8 7 7 4 5 7 5 7 5 4 3 8 6 3 3 3 4 6 7 2 5 8 7 5 9 3 4 5 6 7 8 7 6 5 3 2 3 4 7 6 4 8 6 5 6 5 2 4 7 8 9 6 7 8 2 3 7 8 5 6 7 8 5 3 4 9 7 6 4 5 6 8 7 5 3 5 9 8 6 7 8 7 8 7 7 8 9 2 3 4 5 7 8 6 5 4 5 7 6 7 8 9 0 0 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 0 4 9 7 4 2 5 8 6 4 5 8 6 1 3 4 5 6 8 7 7 4 5 7 5 7 5 4 3 8 6 3 3 3 4 6 7 2 5 8 7 5 9 3 4 5 6 7 8 7 6 5 3 2 3 4 7 6 4 8 6 5 6 5 2 4 7 8 9 6 7 8 2 3 7 8 5 6 7 8 5 3 4 9 7 6 4 5 6 8 7 5 3 5 9 8 6 7 8 7 8 7 7 8 9 2 3 4 5 7 8 6 5 4 5 7 6 7 8 9 0 0 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 0 4 9 7 4 2 5 8 6 4 5 8 6 1 3 4 5 6 8 7 7 4 5 7 5 7 5 4 3 8 6 3 3 3 4 6 7 2 5 8 7 5 9 3 4 5 6 7 8 7 6 5 3 2 3 4 7 6 4 8 6 5 6 5 2 4 7 8 9 6 7 8 2 3 7 8 5 6 7 8 5 3 4 9 7 6 4 5 6 8 7 5 3 5 9 8 6 7 8 7 8 7 7 8 9 2 3 4 5 7 8 6 5 4 5 7 6 7 8 9 0 4 9 7 4 2 5 8 6 4 5 8 6 1 3 4 5 6 8 7 7 4 5 7 5 7 5 4 3 8 6 3 3 3 4 6 7 2 5 8 7 5 9 3 4 5 6 7 8 7 6 5 3 2 3 4 7 6 4 8 6 5 6 5 2 4 7 8 9 6 7 8 2 3 7 8 5 6 7 8 5 3 4 9 7 6 4 5 6 8 7 5 3 5 9 8 6 7 8 7 8 7 7 8 9 2 3 4 5 7 8 6 5 4 5 7 6 7 8 9 0 ``` 输出 ``` 2861 ``` 而你输出的是 ``` 2859 ```
by Steve_JTH @ 2022-09-24 08:27:37


|