oj 提问 矩阵转置题? 为什么可以算出正确答案,但是判题不通过?

为什么判题无法通过?

#include <stdio.h>
#include <stdlib.h>

int main()
{
    int m,n,i,j;
    scanf("%d%d",&m,&n);
    char *p;

    p = (char*)malloc(n*m*sizeof(char));
    for(i = 0;i<m;i++)
    {
        for(j = 0;j<n;j++)
        {
            scanf("%d",&p[i*n+j]);
        }
    }
    for(i = 0;i<n;i++)
    {
        for(j = 0 ;j < m;j++)
        {
            if(j == m-1)
            printf("%d\n",p[j*n+i]);
            else
            printf("%d ",p[j*n+i]);
        }
    }
//    free(p);
    return 0;
}

可能是代码对部分数据能运算出正确结果,或者一些特殊情况没有考虑到

不知道你这个问题是否已经解决, 如果还没有解决的话:

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^