home *** CD-ROM | disk | FTP | other *** search
/ PCNET 2006 November - Disc 1 / PCNET_CD_2006_11_1.iso / dergiden / sudoku / sudoku.jar / algorithm / g.class (.txt) < prev   
Encoding:
Java Class File  |  2006-02-25  |  1.7 KB  |  158 lines

  1. package algorithm;
  2.  
  3. // $FF: renamed from: algorithm.g
  4. public final class class_0 implements Cloneable {
  5.    // $FF: renamed from: a boolean[][]
  6.    protected boolean[][] field_0 = null;
  7.    // $FF: renamed from: b boolean[][]
  8.    protected boolean[][] field_1 = null;
  9.    // $FF: renamed from: c boolean[][]
  10.    protected boolean[][] field_2 = null;
  11.    // $FF: renamed from: d boolean[][]
  12.    protected boolean[][] field_3 = null;
  13.    // $FF: renamed from: e int[][]
  14.    protected int[][] field_4 = null;
  15.    // $FF: renamed from: f int[][]
  16.    protected int[][] field_5 = null;
  17.    // $FF: renamed from: g boolean
  18.    protected boolean field_6;
  19.    // $FF: renamed from: h int
  20.    protected int field_7;
  21.  
  22.    protected class_0() {
  23.       this.field_0 = new boolean[9][9];
  24.       this.field_4 = new int[9][9];
  25.       this.field_5 = new int[9][9];
  26.       this.field_1 = new boolean[9][11];
  27.       this.field_2 = new boolean[9][11];
  28.       this.field_3 = new boolean[9][11];
  29.       this.method_0();
  30.    }
  31.  
  32.    protected final Object clone() throws CloneNotSupportedException {
  33.       class_0 var1 = new class_0();
  34.       System.arraycopy(this.field_0, 0, var1.field_0, 0, this.field_0.length);
  35.       System.arraycopy(this.field_4, 0, var1.field_4, 0, this.field_4.length);
  36.       System.arraycopy(this.field_1, 0, var1.field_1, 0, this.field_1.length);
  37.       System.arraycopy(this.field_2, 0, var1.field_2, 0, this.field_2.length);
  38.       System.arraycopy(this.field_3, 0, var1.field_3, 0, this.field_3.length);
  39.       System.arraycopy(this.field_5, 0, var1.field_5, 0, this.field_5.length);
  40.       var1.field_6 = this.field_6;
  41.       var1.field_7 = this.field_7;
  42.       return var1;
  43.    }
  44.  
  45.    // $FF: renamed from: a () void
  46.    protected final void method_0() {
  47.       for(int var1 = 0; var1 < 9; ++var1) {
  48.          for(int var2 = 0; var2 < 9; ++var2) {
  49.             this.field_4[var1][var2] = 0;
  50.             this.field_0[var1][var2] = false;
  51.          }
  52.  
  53.          for(int var3 = 0; var3 <= 10; ++var3) {
  54.             this.field_1[var1][var3] = false;
  55.             this.field_2[var1][var3] = false;
  56.             this.field_3[var1][var3] = false;
  57.          }
  58.       }
  59.  
  60.       this.field_6 = false;
  61.       this.field_7 = 0;
  62.    }
  63.  
  64.    // $FF: renamed from: b () void
  65.    protected final void method_1() {
  66.       for(int var1 = 0; var1 < 9; ++var1) {
  67.          for(int var2 = 0; var2 < 9; ++var2) {
  68.             if (!this.method_7(var1, var2)) {
  69.                this.method_6(var1, var2);
  70.             }
  71.          }
  72.       }
  73.  
  74.    }
  75.  
  76.    // $FF: renamed from: a (int, int) int
  77.    protected static int method_2(int var0, int var1) {
  78.       return var0 / 3 * 3 + var1 / 3;
  79.    }
  80.  
  81.    // $FF: renamed from: a (int, int, int) boolean
  82.    protected final boolean method_3(int var1, int var2, int var3) {
  83.       return !this.field_2[var1][var3] && !this.field_1[var2][var3] && !this.field_3[method_2(var1, var2)][var3];
  84.    }
  85.  
  86.    // $FF: renamed from: b (int, int, int) void
  87.    protected final void method_4(int var1, int var2, int var3) {
  88.       this.method_5(var1, var2, var3);
  89.       this.field_0[var1][var2] = true;
  90.    }
  91.  
  92.    // $FF: renamed from: c (int, int, int) void
  93.    protected final void method_5(int var1, int var2, int var3) {
  94.       if (var3 == 0 && this.field_4[var1][var2] != 0) {
  95.          --this.field_7;
  96.       }
  97.  
  98.       if (var3 != 0 && this.field_4[var1][var2] == 0) {
  99.          ++this.field_7;
  100.       }
  101.  
  102.       this.field_4[var1][var2] = var3;
  103.       this.field_2[var1][var3] = true;
  104.       this.field_1[var2][var3] = true;
  105.       this.field_3[method_2(var1, var2)][var3] = true;
  106.    }
  107.  
  108.    // $FF: renamed from: b (int, int) void
  109.    protected final void method_6(int var1, int var2) {
  110.       if (this.field_4[var1][var2] != 0) {
  111.          --this.field_7;
  112.       }
  113.  
  114.       this.field_2[var1][this.field_4[var1][var2]] = false;
  115.       this.field_1[var2][this.field_4[var1][var2]] = false;
  116.       this.field_3[method_2(var1, var2)][this.field_4[var1][var2]] = false;
  117.       this.field_4[var1][var2] = 0;
  118.       this.field_0[var1][var2] = false;
  119.    }
  120.  
  121.    // $FF: renamed from: c (int, int) boolean
  122.    protected final boolean method_7(int var1, int var2) {
  123.       return this.field_0[var1][var2];
  124.    }
  125.  
  126.    // $FF: renamed from: c () void
  127.    protected final void method_8() {
  128.       for(int var1 = 0; var1 < 9; ++var1) {
  129.          for(int var2 = 1; var2 <= 9; ++var2) {
  130.             this.field_2[var1][var2] = false;
  131.             this.field_1[var1][var2] = false;
  132.             this.field_3[var1][var2] = false;
  133.          }
  134.       }
  135.  
  136.       for(int var3 = 0; var3 < 9; ++var3) {
  137.          for(int var4 = 0; var4 < 9; ++var4) {
  138.             this.field_2[var3][this.field_4[var3][var4]] = true;
  139.             this.field_1[var4][this.field_4[var3][var4]] = true;
  140.             this.field_3[method_2(var3, var4)][this.field_4[var3][var4]] = true;
  141.          }
  142.       }
  143.  
  144.    }
  145.  
  146.    // $FF: renamed from: d () void
  147.    protected final void method_9() {
  148.       this.field_6 = true;
  149.  
  150.       for(int var1 = 0; var1 < 9; ++var1) {
  151.          for(int var2 = 0; var2 < 9; ++var2) {
  152.             this.field_5[var1][var2] = this.field_4[var1][var2];
  153.          }
  154.       }
  155.  
  156.    }
  157. }
  158.