Guest User

Untitled

a guest
Feb 24th, 2018
86
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.24 KB | None | 0 0
  1. bool cuadrante(char v,ulong n,ulong m,ulong n2,ulong m2, char [][] grid){
  2. ulong i,j;
  3. ulong lim,lim2;
  4. lim = 3 * (n+1);
  5. lim2 = 3 * (m+1);
  6. bool bandera = true;
  7. for (i=3*n;i<lim;i++){
  8. for(j=3*m;j<lim2;j++){
  9. if(i != n2 || j!=m2){
  10. if(v == grid[i][j] ){
  11. bandera = false;
  12. }
  13. }
  14. }
  15. }
  16. return bandera;
  17. }
  18. bool findCoincidences(char[][] grid,ulong n ,ulong m){
  19. char valor = grid[n][m];
  20. ulong i,j,k;
  21. for (i = 0; i<= 8; i++){
  22. if(!(i==m)){
  23. if(grid[n][i]==valor){
  24. return false;
  25. }
  26. }
  27. }
  28. for (i = 0; i<= 8; i++){
  29. if(!(i==n)){
  30. if(grid[i][m]==valor){
  31. return false;
  32. }
  33. }
  34. }
  35. // buscar en cuadrante
  36. j = n/3;
  37. k = m/3;
  38. bool buscar = cuadrante(valor,j,k,n,m,grid);
  39. if(!buscar){
  40. return false;
  41. }
  42. return true;
  43. }
  44. bool sudoku2(char[][] grid) {
  45. foreach(i,e; grid){
  46. foreach(j,v;e){
  47. if(!(v == '.')){
  48. bool valido = findCoincidences(grid,i,j);
  49. if (!valido){
  50. return false;
  51. }
  52. }
  53. }
  54. }
  55. return true;
  56. }
Add Comment
Please, Sign In to add comment