Advertisement
Elnidas

Untitled

Mar 17th, 2021
28
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.33 KB | None | 0 0
  1. private static char analizarDyV(int[][] m, int filaInf, int filaSup, int colInf, int colSup) {
  2. if (filaInf == filaSup && colInf == colSup) {
  3. if (colInf == 0 && colSup == 0)
  4. return '0';
  5. else if (m[filaInf][colInf] == filaInf + colInf)
  6. return 's';
  7. else if (m[filaInf][colInf] == filaInf - colInf)
  8. return 'r';
  9. else
  10. return 'n';
  11. } else if (filaInf == filaSup) {
  12. int colMedia = (colInf + colSup) / 2;
  13. char r1 = analizarDyV(m, filaInf, filaSup, colInf, colMedia);
  14. char r2 = analizarDyV(m, filaInf, filaSup, colMedia + 1, colSup);
  15. return (r1 == '0' ? r2 : (r1 == r2) ? r1 : 'n');
  16. } else if (colInf == colSup) {
  17. int filaMedia = (filaInf + filaSup) / 2;
  18. char r1 = analizarDyV(m, filaInf, filaMedia, colInf, colSup);
  19. char r2 = analizarDyV(m, filaMedia + 1, filaSup, colInf, colSup);
  20. return (r1 == '0' ? r2 : (r1 == r2) ? r1 : 'n');
  21. } else {
  22. int filaMedia = (filaInf + filaSup) / 2;
  23. int colMedia = (colInf + colSup) / 2;
  24. char r1 = analizarDyV(m, filaInf, filaMedia, colInf, colMedia);
  25. char r2 = analizarDyV(m, filaInf, filaMedia, colMedia + 1, colSup);
  26. char r3 = analizarDyV(m, filaMedia + 1, filaSup, colInf, colMedia);
  27. char r4 = analizarDyV(m, filaMedia + 1, filaSup, colMedia + 1, colSup);
  28. return ((r1 == r2) && (r1 == r3) && (r1 == r4) ? r1 : 'n');
  29. }
  30. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement