import java.io.*;
import java.util.*;
public class Solution {
public static void main(String[] args) {
/* Enter your code here. Read input from STDIN. Print output to STDOUT. Your class should be named Solution. */
int sum1=0, sum2=0;
Scanner in= new Scanner(System.in);
int rows = in.nextInt();
int[][] matrix= new int[rows][rows];
for(int i=0; i<rows; i++)
{
for(int j=0; j<rows; j++)
{
matrix[i][j]=in.nextInt();
if(i==j)
{
sum1=sum1+matrix[i][j];
}
else if((i+j)%2==0)
{
sum2=sum2+matrix[i][j];
}
}
}
System.out.print(Math.abs(sum2-sum1));
}
}
Ce code permet de connaître la différence de diagonale. Mais cela ne fonctionne pas correctement. Quelqu'un peut-il m'aider à corriger ce code?Le code de différence diagonale ne fonctionne pas
Pouvez-vous relier le lien HackerRank? Aussi, juste une conjecture sauvage, avec cette ligne de code: "int rows = in.nextInt();" manque-t-il une autre ligne appelée "int columns = in.nextInt();"? Je suppose qu'il vous fournit une autre variable dans l'entrée, mais je peux me tromper puisque je ne suis pas sûr de savoir à quel défi HackerRank vous faites référence. – retodaredevil
Non, je pense que OP n'a pas besoin de 'columns', comme:' int [] [] matrix = new int [lignes] [lignes]; '... –
En d'autres termes, c'est une matrice carrée. 'rows' pourrait probablement être renommé' size'. – markspace