#include <stdio.h>
#include <stdlib.h>
int main(){
int rA, cA, rB, cB, k;
int *kp = &k;
if(!scanf("%d%d", &rA
, &cA
)){ return 1;
}
if(cA < 1 || rA < 1){
return 1;
}
printf("\nEnter A (n x p): "); if(!scanf("%d%d", &rB
, &cB
)){ return 1;
}
if(cB < 1 || rB < 1){
return 1;
}
printf("\nEnter the value of k: "); return 1;
}
if(k < 1){
return 1;
}
int N = 1;
while((N < rA) || (N < cA) || (N < rB) || (N < cB)){
N *= 2;
}
printf("\n %d %d %d", rA
, cA
, N
); int *A, *B, *C;
*A
= (int*)malloc(sizeof(int)*N
*N
); *B
= (int*)malloc(sizeof(int)*N
*N
); *C
= (int*)malloc(sizeof(int)*rA
*cB
); if (A == NULL || B == NULL || C == NULL){
printf("\nThe program can't get enough RAM."); return 1;
}
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxzdGRsaWIuaD4KCmludCBtYWluKCl7CiAgICBpbnQgIHJBLCBjQSwgckIsIGNCLCBrOwogICAgCiAgICBpbnQgKmtwID0gJms7CgogICAgcHJpbnRmKCJFbnRlciBBIChtIHggbik6ICIpOwogICAgaWYoIXNjYW5mKCIlZCVkIiwgJnJBLCAmY0EpKXsKICAgICAgICBwcmludGYoIlxuSW52YWxpZCBpbnB1dC4iKTsKICAgICAgICByZXR1cm4gMTsKICAgIH0KICAgIGlmKGNBIDwgMSB8fCByQSA8IDEpewogICAgICAgIHByaW50ZigiXG5JbnZhbGlkIGlucHV0LiIpOwogICAgICAgIHJldHVybiAxOwogICAgfQoKICAgIHByaW50ZigiXG5FbnRlciBBIChuIHggcCk6ICIpOwogICAgaWYoIXNjYW5mKCIlZCVkIiwgJnJCLCAmY0IpKXsKICAgICAgICBwcmludGYoIlxuSW52YWxpZCBpbnB1dC4iKTsKICAgICAgICByZXR1cm4gMTsKICAgIH0KICAgIGlmKGNCIDwgMSB8fCByQiA8IDEpewogICAgICAgIHByaW50ZigiXG5JbnZhbGlkIGlucHV0LiIpOwogICAgICAgIHJldHVybiAxOwogICAgfQoKICAgIHByaW50ZigiXG5FbnRlciB0aGUgdmFsdWUgb2YgazogIik7CiAgICBpZighc2NhbmYoIiVkIiwgJmspKXsKICAgICAgICBwcmludGYoIlxuSW52YWxpZCBpbnB1dC4iKTsKICAgICAgIHJldHVybiAxOwogICAgfQogICAgaWYoayA8IDEpewogICAgICAgIHByaW50ZigiXG5JbnZhbGlkIGlucHV0LiIpOwogICAgICAgIHJldHVybiAxOwogICAgfQoKICAgCgogICAgaW50IE4gPSAxOwogICAgd2hpbGUoKE4gPCByQSkgfHwgKE4gPCBjQSkgfHwgKE4gPCByQikgfHwgKE4gPCBjQikpewogICAgICAgIE4gKj0gMjsKICAgIH0KCglwcmludGYoIlxuICVkICVkICVkIiwgckEsIGNBLCBOKTsKICAgIGludCAqQSwgKkIsICpDOwogICAgKkEgPSAoaW50KiltYWxsb2Moc2l6ZW9mKGludCkqTipOKTsKICAgICpCID0gKGludCopbWFsbG9jKHNpemVvZihpbnQpKk4qTik7CiAgICAqQyA9IChpbnQqKW1hbGxvYyhzaXplb2YoaW50KSpyQSpjQik7CiAgICBpZiAoQSA9PSBOVUxMIHx8IEIgPT0gTlVMTCB8fCBDID09IE5VTEwpewogICAgICAgIHByaW50ZigiXG5UaGUgcHJvZ3JhbSBjYW4ndCBnZXQgZW5vdWdoIFJBTS4iKTsKICAgICAgICByZXR1cm4gMTsKICAgIH0KICAgIHByaW50ZigiU1VDQ0VTUyEhISEhITExIik7CiAgICByZXR1cm4gMDsKfQ==