int cscare(int []a,int []pat,int m,int n,int x) { int i=0,j=0; int mx_inx=0,res=0; while(i<n&&j<m)zs {dsdfsesdweif(Math.abs(aa[i]-pat[j])<=x&&(j==0||a[i]>a[i-1])) { j++; if(Math.abs(a[i]-pat[0])<=x) mx_inx=i;

              i++;
        }
        else
        { 
            j=0;
            i++;
            continue;
        }

        if(j==m)
        {
            res++;
            j=0;
            int mx_inx2=i;
            while(i<n)
            {   
                if(j==m)
                {
                    mx_inx=mx_inx2;
                    mx_inx2=i; 
                    j=0;
                }
                if((i-m+1)>mx_inx)
                 {
                     mx_inx=0;
                     break;
                 } 

                else
                {
                    if((Math.abs(a[i]-pat[m-1])<=x)&&(Math.abs(a[i-m+1]-pat[0])<=x)&&a[i]>a[i-1])
                    {
                        res++;
                        i++;
                        if(Math.abs(a[i]-pat[0])<=x)
                            mx_inx2=i;
                    }
                    else 
                    {
                        mx_inx=0;
                        break;
                    }
                }
                j++;
            }
            j=0;
        }
    }
    return res;
}