Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 8 additions & 8 deletions .besouro/20150930115137755/actions.txt
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
FileOpenedAction 1443603101760 SudokuVerifier.java 75 1 0 0
EditAction 1443603121425 SudokuVerifier.java 116 1 1 0
RefactoringAction 1443603133972 SudokuVerifier.java RENAME verify()=>int verify(String) METHOD
EditAction 1443603167403 SudokuVerifier.java 189 1 1 0
RefactoringAction 1443603212994 TestSudokuVerifier.java ADD void test() METHOD
RefactoringAction 1443603213121 TestSudokuVerifier.java ADD import org.junit.Assert.* IMPORT
RefactoringAction 1443603213283 TestSudokuVerifier.java ADD TestSudokuVerifier.java CLASS
FileOpenedAction 1443603215695 TestSudokuVerifier.java 202 1 1 0
FileOpenedAction 1443603101760 SudokuVerifier.java 75 1 0 0
EditAction 1443603121425 SudokuVerifier.java 116 1 1 0
RefactoringAction 1443603133972 SudokuVerifier.java RENAME verify()=>int verify(String) METHOD
EditAction 1443603167403 SudokuVerifier.java 189 1 1 0
RefactoringAction 1443603212994 TestSudokuVerifier.java ADD void test() METHOD
RefactoringAction 1443603213121 TestSudokuVerifier.java ADD import org.junit.Assert.* IMPORT
RefactoringAction 1443603213283 TestSudokuVerifier.java ADD TestSudokuVerifier.java CLASS
FileOpenedAction 1443603215695 TestSudokuVerifier.java 202 1 1 0
1 change: 1 addition & 0 deletions .besouro/20150930161435990/actions.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
FileOpenedAction 1443618876339 SudokuVerifier.java 217 1 1 0
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
5 changes: 5 additions & 0 deletions .besouro/20150930161737316/actions.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
FileOpenedAction 1443619057467 SudokuVerifier.java 217 17 48 0
FileOpenedAction 1443619354152 sudokuMain.java 55 0 0 0
FileOpenedAction 1443619586212 sudokuTask.java 55 0 0 0
FileOpenedAction 1443619747986 Exhaustive.java 55 0 0 0
FileOpenedAction 1443620059742 SudokuVerifier.java 217 1 1 0
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
2 changes: 2 additions & 0 deletions .besouro/20151003104351131/actions.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
FileOpenedAction 1443858231667 SudokuVerifier.java 217 1 1 0
FileOpenedAction 1443859017378 TestSudokuVerifier.java 216 1 1 0
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
18 changes: 18 additions & 0 deletions .besouro/20151003125334341/actions.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
FileOpenedAction 1443866014488 SudokuVerifier.java 217 1 1 0
RefactoringAction 1443866043889 SudokuVerifier.java RENAME verify(String)=>class main null
RefactoringAction 1443866046424 SudokuVerifier.java MOVE verify(String)=>class SudokuVerifier null
RefactoringAction 1443866069278 SudokuVerifier.java ADD vod main FIELD
RefactoringAction 1443866070295 SudokuVerifier.java ADD static vod main() METHOD
RefactoringAction 1443866070295 SudokuVerifier.java ADD int verify(String) METHOD
RefactoringAction 1443866084368 SudokuVerifier.java RENAME main()=>static void main(String METHOD
RefactoringAction 1443866086378 SudokuVerifier.java MOVE verify(String)=>class SudokuVerifier METHOD
RefactoringAction 1443866279466 SudokuVerifier.java MOVE verify(String)=>class main METHOD
RefactoringAction 1443866287980 SudokuVerifier.java MOVE verify(String)=>class SudokuVerifier METHOD
RefactoringAction 1443866322033 SudokuVerifier.java MOVE verify(String)=>class main METHOD
RefactoringAction 1443866323539 SudokuVerifier.java MOVE verify(String)=>class SudokuVerifier METHOD
RefactoringAction 1443867389719 SudokuVerifier.java MOVE verify(String)=>class main METHOD
RefactoringAction 1443867392227 SudokuVerifier.java MOVE verify(String)=>class SudokuVerifier METHOD
RefactoringAction 1443867393247 SudokuVerifier.java MOVE verify(String)=>class main METHOD
RefactoringAction 1443867501277 SudokuVerifier.java RENAME main=>void main(String METHOD
RefactoringAction 1443867518841 SudokuVerifier.java ADD Exception e FIELD
RefactoringAction 1443867523402 SudokuVerifier.java REMOVE e FIELD
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
32 changes: 32 additions & 0 deletions .besouro/20151004183528839/actions.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
FileOpenedAction 1443972929308 SudokuVerifier.java 1375 2 1 0
RefactoringAction 1443973060483 SudokuVerifier.java REMOVE verify(String) METHOD
RefactoringAction 1443973068539 SudokuVerifier.java ADD Scanner sc FIELD
RefactoringAction 1443973068540 SudokuVerifier.java ADD String line FIELD
RefactoringAction 1443973072053 SudokuVerifier.java REMOVE line FIELD
RefactoringAction 1443973072054 SudokuVerifier.java REMOVE sc FIELD
RefactoringAction 1443973477383 SudokuVerifier.java ADD Boolean Leng FIELD
RefactoringAction 1443973478396 SudokuVerifier.java RENAME Leng=>Boolean Length FIELD
RefactoringAction 1443973481408 SudokuVerifier.java RENAME Length=>Boolean LengthVeri FIELD
RefactoringAction 1443973482914 SudokuVerifier.java RENAME LengthVeri=>Boolean LengthVerifier FIELD
RefactoringAction 1443973487421 SudokuVerifier.java RENAME LengthVerifier=><initializer /1> null
RefactoringAction 1443973691257 SudokuVerifier.java ADD Boolean Numb FIELD
RefactoringAction 1443973693773 SudokuVerifier.java RENAME Numb=>Boolean Numver FIELD
RefactoringAction 1443973695790 SudokuVerifier.java RENAME Numver=>Boolean NumC FIELD
RefactoringAction 1443973697810 SudokuVerifier.java RENAME NumC=>Boolean NumVeri FIELD
RefactoringAction 1443973700318 SudokuVerifier.java RENAME NumVeri=>Boolean NumVerifier FIELD
RefactoringAction 1443973705333 SudokuVerifier.java RENAME NumVerifier=>static Boolean NumVerifier(String) METHOD
RefactoringAction 1443975265410 SudokuVerifier.java ADD Boolean Row FIELD
RefactoringAction 1443975268921 SudokuVerifier.java RENAME Row=>Boolean RowVerifier FIELD
RefactoringAction 1443975290744 SudokuVerifier.java RENAME RowVerifier=>static Boolean RowVerifier() METHOD
RefactoringAction 1443975292760 SudokuVerifier.java RENAME RowVerifier()=>static Boolean RowVerifier(int) METHOD
RefactoringAction 1443975480086 SudokuVerifier.java RENAME RowVerifier(int)=>static Boolean RowVerifier(int METHOD
RefactoringAction 1443975592403 SudokuVerifier.java ADD Boolean Small FIELD
RefactoringAction 1443975595410 SudokuVerifier.java REMOVE Small FIELD
RefactoringAction 1443975596415 SudokuVerifier.java ADD Boolean C FIELD
RefactoringAction 1443975618614 SudokuVerifier.java RENAME C=>static Boolean RowVerifier(int METHOD
RefactoringAction 1443975624127 SudokuVerifier.java RENAME RowVerifier(int=>static Boolean ColumnVerifier(int METHOD
CompilationAction 1443975918572 SudokuVerifier.java
CompilationAction 1443975918573 SudokuVerifier.java
CompilationAction 1443975918574 SudokuVerifier.java
CompilationAction 1443975918574 SudokuVerifier.java
CompilationAction 1443975918575 SudokuVerifier.java
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
23 changes: 23 additions & 0 deletions .besouro/20151004192529677/actions.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
FileOpenedAction 1443975929807 SudokuVerifier.java 1387 5 13 0
RefactoringAction 1443975953237 SudokuVerifier.java ADD static int METHOD
RefactoringAction 1443975978838 SudokuVerifier.java ADD static boolean Verifier(int METHOD
RefactoringAction 1443976018955 SudokuVerifier.java REMOVE Verifier(int METHOD
RefactoringAction 1443976018956 SudokuVerifier.java REMOVE StrIntoArray(String) METHOD
RefactoringAction 1443976057267 SudokuVerifier.java ADD static boolean Verifier(int METHOD
RefactoringAction 1443976057268 SudokuVerifier.java ADD static int METHOD
RefactoringAction 1443976092280 SudokuVerifier.java REMOVE Verifier(int METHOD
RefactoringAction 1443976092281 SudokuVerifier.java REMOVE StrIntoArray(String) METHOD
RefactoringAction 1443976099296 SudokuVerifier.java ADD static boolean Verifier(int METHOD
RefactoringAction 1443976099297 SudokuVerifier.java ADD static int METHOD
RefactoringAction 1443976366617 SudokuVerifier.java ADD static boolean SmallSudokuVerifier(int METHOD
RefactoringAction 1443976379525 SudokuVerifier.java REMOVE SmallSudokuVerifier(int METHOD
RefactoringAction 1443976388048 SudokuVerifier.java ADD static boolean SmallSudokuVerifier(int METHOD
RefactoringAction 1443976398554 SudokuVerifier.java RENAME SmallSudokuVerifier(int=>static boolean SmallSudokuVerifier() METHOD
RefactoringAction 1443976401582 SudokuVerifier.java RENAME SmallSudokuVerifier()=>static boolean SmallSudokuVerifier(int METHOD
RefactoringAction 1443976407588 SudokuVerifier.java RENAME Verifier(int=>static boolean Verifier() METHOD
RefactoringAction 1443976410600 SudokuVerifier.java RENAME Verifier()=>static boolean Verifier(int METHOD
RefactoringAction 1443976441334 SudokuVerifier.java ADD static boolean ArrayVerifier(int METHOD
RefactoringAction 1443976445690 SudokuVerifier.java REMOVE ArrayVerifier(int METHOD
RefactoringAction 1443976447498 SudokuVerifier.java ADD static boolean ArrayVerifier(int METHOD
RefactoringAction 1443976451215 SudokuVerifier.java REMOVE ArrayVerifier(int METHOD
RefactoringAction 1443976454741 SudokuVerifier.java ADD static boolean ArrayVerifier(int METHOD
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
3 changes: 3 additions & 0 deletions .besouro/20151004193846801/actions.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
FileOpenedAction 1443976726957 SudokuVerifier.java 2096 9 23 0
RefactoringAction 1443977334198 SudokuVerifier.java ADD static int METHOD
FileOpenedAction 1443977599043 TestSudokuVerifier.java 216 1 1 0
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
6 changes: 6 additions & 0 deletions .besouro/20151007141222292/actions.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
FileOpenedAction 1444216342725 TestSudokuVerifier.java 216 1 1 0
UnitTestCaseAction 1444216470447 TestSudokuVerifier.java FAIL
UnitTestSessionAction 1444216470457 TestSudokuVerifier FAIL
EditAction 1444217289406 TestSudokuVerifier.java 266 1 2 0
UnitTestCaseAction 1444217294573 TestSudokuVerifier.java FAIL
UnitTestSessionAction 1444217294574 TestSudokuVerifier FAIL
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
1 change: 1 addition & 0 deletions .besouro/20151008195141170/actions.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
FileOpenedAction 1444323101631 SudokuVerifier.java 3359 10 31 0
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
9 changes: 9 additions & 0 deletions .besouro/20151008195436712/actions.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
FileOpenedAction 1444323276863 SudokuVerifier.java 3359 10 31 0
RefactoringAction 1444325337943 SudokuVerifier.java ADD void RowVerifier() METHOD
RefactoringAction 1444325344982 SudokuVerifier.java REMOVE RowVerifier() METHOD
RefactoringAction 1444325347499 SudokuVerifier.java ADD void RowVerifier() METHOD
RefactoringAction 1444325356620 SudokuVerifier.java REMOVE RowVerifier() METHOD
RefactoringAction 1444325459014 TestSudokuVerifier.java REMOVE verify(String) METHOD
CompilationAction 1444329770531 SudokuVerifier.java
RefactoringAction 1444329877489 SudokuVerifier.java ADD void RowVerifier() METHOD
RefactoringAction 1444329880504 SudokuVerifier.java REMOVE RowVerifier() METHOD
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
5 changes: 5 additions & 0 deletions .besouro/20151008220506367/actions.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
FileOpenedAction 1444331106826 SudokuVerifier.java 3666 10 31 0
FileOpenedAction 1444331113780 TestSudokuVerifier.java 266 1 2 0
EditAction 1444331148136 TestSudokuVerifier.java 234 1 1 0
UnitTestCaseAction 1444331338206 TestSudokuVerifier.java OK
UnitTestSessionAction 1444331338230 TestSudokuVerifier OK
1 change: 1 addition & 0 deletions .besouro/20151008220506367/besouroEpisodes.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
1444331338230 refactoring 1A 231 true
Empty file.
1 change: 1 addition & 0 deletions .besouro/20151008220506367/randomHeuristicEpisodes.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
1444331338230 refactoring 1A 231 true
Empty file.
1 change: 1 addition & 0 deletions .besouro/20151008220506367/zorroEpisodes.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
1444331338230 refactoring 1A 231 false
1 change: 1 addition & 0 deletions .besouro/20151009203317532/actions.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
FileOpenedAction 1444411998029 TestSudokuVerifier.java 1322 5 10 5
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
1 change: 1 addition & 0 deletions .besouro/20151009220211119/actions.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
FileOpenedAction 1444417331266 TestSudokuVerifier.java 1274 4 8 4
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
14 changes: 7 additions & 7 deletions .classpath
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="src" path="src"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
<classpathentry kind="con" path="org.eclipse.jdt.junit.JUNIT_CONTAINER/4"/>
<classpathentry kind="output" path="bin"/>
</classpath>
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="src" path="src"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
<classpathentry kind="con" path="org.eclipse.jdt.junit.JUNIT_CONTAINER/4"/>
<classpathentry kind="output" path="bin"/>
</classpath>
2 changes: 1 addition & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
/bin/
/bin/
.DS_Store
34 changes: 17 additions & 17 deletions .project
Original file line number Diff line number Diff line change
@@ -1,17 +1,17 @@
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>Sudoku</name>
<comment></comment>
<projects>
</projects>
<buildSpec>
<buildCommand>
<name>org.eclipse.jdt.core.javabuilder</name>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>org.eclipse.jdt.core.javanature</nature>
</natures>
</projectDescription>
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>Sudoku</name>
<comment></comment>
<projects>
</projects>
<buildSpec>
<buildCommand>
<name>org.eclipse.jdt.core.javabuilder</name>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>org.eclipse.jdt.core.javanature</nature>
</natures>
</projectDescription>
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1 +1 @@
# Sudoku
# Sudoku
148 changes: 139 additions & 9 deletions src/org/univoulu/tol/sqatlab/sudoku/SudokuVerifier.java
Original file line number Diff line number Diff line change
@@ -1,9 +1,139 @@
package org.univoulu.tol.sqatlab.sudoku;

public class SudokuVerifier {

public int verify(String candidateSolution) {
// returns 1 if the candidate solution is correct
return 0;
}
}
//2441625 Liu Lei
package org.univoulu.tol.sqatlab.sudoku;
import java.util.Scanner;
public class SudokuVerifier{
public static void main(String[] args){
Scanner scanner= new Scanner(System.in);
String line=scanner.nextLine();
if(LengthVerifier(line)){
if(NumVerifier(line)){
int m[]=StrIntoArray(line);
int i= -Verifier(m);
switch (i){
case 0: System.out.println("Yes,it's Sudoku!"); break;
case 2: System.out.println("No,itn't Sudoku! it is violating Rule #2");break;
case 3: System.out.println("No,itn't Sudoku! it is violating Rule #3");break;
case 4: System.out.println("No,itn't Sudoku! it is violating Rule #4");break;
default:
}
}
else{
System.out.println("No,itn't Sudoku! it is violating Rule #1");
}

}

}
public static boolean LengthVerifier(String candidateSolution){
if(candidateSolution.length()!=81){
System.out.println("Lenth doesn't equal to 81 characters!");
return false;
}
return true;
}
public static boolean NumVerifier(String s){
for(int i=0;i<s.length();i++){
int n=s.charAt(i);
if(n<49||n>57){
return false;
}
}
return true;
}
public static int Verifier(int m[] ) {
//TODO Verifier whole string

if(!RowVerifier(m)){
return -3;
}
if(!ColumnVerifier(m)){
return -4;
}
if(!SmallSudokuVerifier(m)){
return -2;
}
return 0;
}
public static int[] StrIntoArray(String s) {
// TODO String transfer into array
int m[]=new int [81];
for(int i=0;i<81;i++){
int n=s.charAt(i);
m[i]=n-48;
}
return m;
}
public static boolean RowVerifier(int m []){
//TODO RowVerifier
int n[][]=new int [9][9];
for(int i=0;i<9;i++){
for(int j=0;j<9;j++){
n[i][j]=m[i*9+j];
}
if(!ArrayVerifier(n[i])){
return false;
}
}
return true;
}
public static boolean ColumnVerifier(int m[]){
//TODO ColumnVerifier
int n[][]=new int [9][9];
for(int i=0;i<9;i++){
for(int j=0;j<9;j++){
n[i][j]=m[i+j*9];
}
if(!ArrayVerifier(n[i])){
return false;
}
}
return true;
}
public static boolean SmallSudokuVerifier(int m [] ) {
// TODO
int [][]n={
{ m[0], m[1], m[2], m[9], m[10], m[11], m[18], m[19], m[20] },
{ m[3], m[4], m[5], m[12], m[13], m[14], m[21], m[22], m[23] },
{ m[6], m[7], m[8], m[15], m[16], m[17], m[24], m[25], m[26] },
{ m[27], m[28], m[29], m[36], m[37], m[38], m[45], m[46], m[47] },
{ m[30], m[31], m[32], m[39], m[40], m[41], m[48], m[49], m[50] },
{ m[33], m[34], m[35], m[42], m[43], m[44], m[51], m[52], m[53] },
{ m[54], m[55], m[56], m[63], m[64], m[65], m[72], m[73], m[74] },
{ m[57], m[58], m[59], m[66], m[67], m[68], m[75], m[76], m[77] },
{ m[60], m[61], m[62], m[69], m[70], m[71], m[78], m[79], m[80] }
};
for(int i=0;i<9;i++){
if(!ArrayVerifier(n[i])){
return false;
}
}
return true;
}
public static boolean ArrayVerifier(int m[]) {
// TODO digits appear only once in a sub-grid
int sum= m[0]+m[1]+m[2]+m[3]+m[4]+m[5]+m[6]+m[7]+m[8];
if(sum !=45){
return false;
}
m=Bubble(m);
for (int i=0;i<m.length;i++){
if (m[i] !=i+1){
return false;
}
}
return true;
}
public static int[] Bubble(int m[] ) {
int i,j,temp;
for (i=m.length-1;0<i;i--){
for (j=0;j<i;j++){
if(m[j]>m[j+1]){
temp=m[j];
m[j]=m[j+1];
m[j+1]=temp;
}
}
}
return m;
}
}
Loading