我们教练刚刚结束的模拟赛T4(然而没有按照难度排序所以真实难度T2)
赛时代码 80pts 求助 /kk
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
int a[503][503];
int t,n;
ll ans1,val2;
ll count(int x,int y){
int maxx=n;
ll ans=0;
for(int i=x;i<=n;i++){
int j=y;
if(a[i][y]==-1) return ans;
while(j<=maxx&&a[i][j]!=-1){j++;ans++;}
maxx=j-1;
}
return ans;
}
void clear(){
for(int i=1;i<=n;i++){
for(int j=1;j<=n;j++){
if(a[i][j]==0) a[i][j]=-1;
}
}
}
ll work(){
ll ans=0;
for(int i=1;i<=n;i++){
for(int j=1;j<=n;j++){
ans+=count(i,j);
}
}
return ans;
}
int main(){
cin>>n;
for(int i=1;i<=n;i++){
for(int j=1;j<=n;j++){
cin>>t;
if(t>100) a[i][j]=1;
if(t<100) a[i][j]=-1;
}
}
ans1 = work();
clear();
ans2 = work();
cout<<ans1-ans2<<endl;
return 0;
}