Aizu onlineの「表計算」問題を解いています。

下記のコードではpresentation errorになってしまいます。
これは Aizu Onlineジャッジの問題について(presentation error) によると、output の仕様に違反していることを意味しているようです。

しかし、一見Sample Outputと同じ結果が得られています。
どこが違うのでしょうか。
また、こういった場合Sample Outputとの違いや、余分な空白などを見つけるにはどうしたらよいでしょうか。

import java.util.Arrays;
import java.util.Scanner;


public class test{

    public static void main(String[] args){

        Scanner scan=new Scanner(System.in);
        int r=scan.nextInt();
        int c=scan.nextInt();
        int[][] matrix_rc=new int[r+1][c+1];
        int sum_r;
        int[] sum_c=new int[c+1];
        Arrays.fill(sum_c, 0);
        for(int i=0;i<r;i++){
            sum_r=0;//毎回の行で初期化
            for(int j=0;j<c+1;j++){
                if(j!=c){
                matrix_rc[i][j]=scan.nextInt();
                sum_r+=matrix_rc[i][j];}
                else if(j==c){
                    matrix_rc[i][j]=sum_r;
                }//c+1列までを完成させた
                sum_c[j]+=matrix_rc[i][j];//j列をすべて足したものを配列に代入
            }
        }
        for(int j=0;j<c+1;j++){
            matrix_rc[r][j]=sum_c[j];
        }//r+1行の配列に代入
        for(int i=0;i<r+1;i++){
            for(int j=0;j<c+1;j++){
                System.out.print(matrix_rc[i][j]);
                if(j<=c){System.out.print(" ");}
            }System.out.println();
        }
        scan.close();
}


}