Advertisement
Manioc

acum 2d array

Aug 3rd, 2018
208
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.63 KB | None | 0 0
  1. int preProcess(){
  2.     sum[0][0] = palin[0][0];
  3.    
  4.     for (int i = 0; i< strlen(palavra); i++){
  5.         for (int j = 0; j< strlen(palavra); j++){
  6.             if(i != 0 || j != 0){
  7.                 if(i == 0) sum[0][j] =  palin[0][j] + sum[0][j-1];
  8.                 else if(j == 0) sum[i][0] = palin[i][0] + sum[i-1][0];
  9.                 else sum[i][j] = palin[i][j] + sum[i-1][j] + sum[i][j-1] - sum[i-1][j-1];
  10.             }
  11.       }
  12.    }
  13. }
  14.  
  15. int sumQuery(int lx, int rx, int ly, int ry){
  16.     int res = sum[ly][ry];
  17.     if (lx > 0)
  18.        res = res - sum[lx-1][ry];
  19.     if (lx > 0)
  20.        res = res - sum[ly][rx-1];
  21.     if (lx > 0 && rx > 0)
  22.        res = res + sum[lx-1][rx-1];
  23.    
  24.    return res;
  25. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement