Advertisement
Guest User

Untitled

a guest
Jan 18th, 2018
79
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.06 KB | None | 0 0
  1. #include <bits/stdc++.h>
  2.  
  3. using namespace std;
  4. typedef long long ll;
  5.  
  6. ll sum[305][305];
  7. ll cur[305];
  8.  
  9. int main(){
  10.     //freopen("in.txt","r",stdin);
  11.     int n,m;
  12.     ll a,b;
  13.     scanf("%d %d %lli %lli",&n,&m,&a,&b);
  14.     for(int i = 1;i<=n;i++){
  15.         for(int j = 1;j<=m;j++){
  16.             scanf("%lli",&sum[i][j]);
  17.             sum[i][j]+=sum[i-1][j];
  18.         }
  19.     }
  20.     /*
  21.     for(int i = 1;i<=n;i++){
  22.         for(int j = 1;j<=m;j++){
  23.             printf("%lli ",sum[i][j]);
  24.         }
  25.         printf("\n");
  26.     }
  27.     */
  28.     ll ans = 0;
  29.     ll l,r;
  30.     ll c1,c2;
  31.     for(int x = 1;x<=n;x++){
  32.         for(int y = x;y<=n;y++){
  33.             for(int i = 1;i<=m;i++){
  34.                 cur[i]=sum[y][i]-sum[x-1][i],cur[i]+=cur[i-1];
  35.             }
  36.             l=0,r=0;
  37.             for(int i = 1;i<=m;i++){
  38.                 c1=max(0LL,cur[i]-b);
  39.                 c2=cur[i]-a;
  40.                 while(cur[l]<c1)l++;
  41.                 while(cur[r]<=c2)r++;
  42.                 ans+=r-l;
  43.             }
  44.         }
  45.     }
  46.     printf("%lli\n",ans);
  47.     return 0;
  48. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement