Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/55.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/apache-kafka/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C 动态异或矩阵、段故障或超时_C_Matrix_Bit Manipulation - Fatal编程技术网

C 动态异或矩阵、段故障或超时

C 动态异或矩阵、段故障或超时,c,matrix,bit-manipulation,C,Matrix,Bit Manipulation,我这样做是为了构建一个动态xor矩阵: 由于内存不足,我遇到了一个故障: int main() { long long int col,row; scanf("%lld %lld",&col,&row); int **matrix = new int*[row]; for(long long int i=0; i<row; i++) matrix[i] = new int[col]; for(long long int k

我这样做是为了构建一个动态xor矩阵:

由于内存不足,我遇到了一个故障:

int main() {
   long long int col,row;
   scanf("%lld %lld",&col,&row); 
   int **matrix = new int*[row]; 

   for(long long int i=0; i<row; i++)
     matrix[i] = new int[col];

     for(long long int k=0;k<row;k++)
     {
       for(long long int j=0;j<col;j++)
       {
         if(k==0)
         scanf("%d",&matrix[k][j]);
            else if(j!=(col-1))
 __asm__ ( "xorl %%ebx, %%eax;": "=a"(matrix[k][j]) : "a"(matrix[k-`1][j]), "b"(matrix[k-1][j+1]));`

            else if(j==(col-1)) 
 __asm__ ( "xorl %%ebx, %%eax;": "=a"(matrix[k][j]) : "a"  (matrix[k-1][j]), "b"(matrix[k-1][0]));
            //  matrix[k][j]=matrix[k-1][j]^matrix[k-1][0]; 
            if(k==(row-1))  
              printf("%d ",matrix[k][j]);                             
       }           
     }
   }
intmain(){
长内列,行;
scanf(“%lld%lld”、&col、&row);
整数**矩阵=新整数*[行];

对于(long long int i=0;它的行数可以达到10^18这一事实应该告诉你,你不能在内存中这样做。这意味着有一个数学/逻辑解决方案。你是对的,但我不知道哪个是数学逻辑解决方案。也许你应该从纸上做一些计算开始,看看模式是什么。