#include <stdio.h>
#define N 100

int main()
{
	int a[101], i, j, b[101][101],c;

	for(i=1; i<=100; i++){
		j = j * a[i];
	}

	for(i=1; i<N; i++){
		for(j=1; j<=100; j++){
		        c = 2;
			b[i][j] = b[i][j-1] + c;
		}
	}

	for ( l=1 ; l<=loop ; l++ ) {
		for ( k=0 ; k<n ; k++ ) {
        		x[k] = q + y[k]*( r*z[k+10] + t*z[k+11] );
		}
	}


	for ( l=1 ; l<=loop ; l++ ) {
		for ( i=0 ; i<25 ; i++ ) {
			for ( j=0 ; j<n ; j++ ) {
				px[j][i] += vy[k][i] * cx[j][k];
			}
		}
	}

	for(i=1; i<N; i++){
		for(j=1; j<=100; j++){
			b[i][j] = b[i][j+1] + b[i+1][j];
		}
	}


	return 0;
}

int i,j,t2,t1,t3;

#include <omp.h>
#include <stdio.h>
#define N 100

int main()
{
	int a[101], i, j, b[101][101],c;

    #pragma omp parallel for private(i) reduction(* : j)
	for(i=1; i<=100; i++){
  		j = j * a[i];
	}

    #pragma omp parallel for private(i,j,c)
	for(i=1; i<N; i++){
    		for(j=1; j<=100; j++){
    		        c = 2;
    			b[i][j] = b[i][j-1] + c;
  		}
	}

    if (loop >= 2) {
      #pragma omp parallel for  private(t2,t1)
      for(t2 = 0; t2 <= n-1; t2++) {
        x[t2]=q+y[t2]*(r*z[t2+10]+t*z[t2+11]);
        if (t2 <= n-1 && t2 >= 0) {
          for(t1 = 2; t1 <= loop; t1++) {
            x[t2]=q+y[t2]*(r*z[t2+10]+t*z[t2+11]);
          }
        }

      }
    }




    if (loop >= 2 && n >= 1) {
      #pragma omp parallel for  private(t2,t3,t1)
      for(t2 = 0; t2 <= 24; t2++) {
        for(t3 = 0; t3 <= n-1; t3++) {
          px[t3][t2]+=vy[k][t2]*cx[t3][k];
          if (t2 <= 24 && t3 >= 0 && n >= t3+1 && t2 >= 0) {
            for(t1 = 2; t1 <= loop; t1++) {
              px[t3][t2]+=vy[k][t2]*cx[t3][k];
            }
          }

        }
      }
    }



    if (N >= 2) {
        b[1][1]=b[1][1+1]+b[1+1][1];
    }
    if (N >= 2) {
        for(t1 = 1; t1 <= N+97; t1++) {
            #pragma omp parallel for private(t2) 
            for(t2 = max(t1-98,1); t2 <= min(N-1,t1+1); t2++) {
                b[t2][t1-t2+2]=b[t2][t1-t2+2+1]+b[t2+1][t1-t2+2];
            }
        }
    }




	return 0;
}