-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathP8XMatrixTransformation.java
122 lines (111 loc) · 3.33 KB
/
P8XMatrixTransformation.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
import java.util.*;
import java.util.regex.*;
import java.text.*;
import java.math.*;
public class P8XMatrixTransformation
{
public String solve(String[] original, String[] target)
{
return "";
}
// BEGIN KAWIGIEDIT TESTING
// Generated by KawigiEdit 2.1.4 (beta) modified by pivanof
private static boolean KawigiEdit_RunTest(int testNum, String[] p0, String[] p1, boolean hasAnswer, String p2) {
System.out.print("Test " + testNum + ": [" + "{");
for (int i = 0; p0.length > i; ++i) {
if (i > 0) {
System.out.print(",");
}
System.out.print("\"" + p0[i] + "\"");
}
System.out.print("}" + "," + "{");
for (int i = 0; p1.length > i; ++i) {
if (i > 0) {
System.out.print(",");
}
System.out.print("\"" + p1[i] + "\"");
}
System.out.print("}");
System.out.println("]");
P8XMatrixTransformation obj;
String answer;
obj = new P8XMatrixTransformation();
long startTime = System.currentTimeMillis();
answer = obj.solve(p0, p1);
long endTime = System.currentTimeMillis();
boolean res;
res = true;
System.out.println("Time: " + (endTime - startTime) / 1000.0 + " seconds");
if (hasAnswer) {
System.out.println("Desired answer:");
System.out.println("\t" + "\"" + p2 + "\"");
}
System.out.println("Your answer:");
System.out.println("\t" + "\"" + answer + "\"");
if (hasAnswer) {
res = answer.equals(p2);
}
if (!res) {
System.out.println("DOESN'T MATCH!!!!");
} else if ((endTime - startTime) / 1000.0 >= 2) {
System.out.println("FAIL the timeout");
res = false;
} else if (hasAnswer) {
System.out.println("Match :-)");
} else {
System.out.println("OK, but is it right?");
}
System.out.println("");
return res;
}
public static void main(String[] args) {
boolean all_right;
all_right = true;
String[] p0;
String[] p1;
String p2;
// ----- test 0 -----
p0 = new String[] { "01", "11" };
p1 = new String[] { "11", "10" };
p2 = "YES";
all_right = KawigiEdit_RunTest(0, p0, p1, true, p2) && all_right;
// ------------------
// ----- test 1 -----
p0 = new String[] { "0111", "0011" };
p1 = new String[] { "1011", "1100" };
p2 = "YES";
all_right = KawigiEdit_RunTest(1, p0, p1, true, p2) && all_right;
// ------------------
// ----- test 2 -----
p0 = new String[] { "0" };
p1 = new String[] { "1" };
p2 = "NO";
all_right = KawigiEdit_RunTest(2, p0, p1, true, p2) && all_right;
// ------------------
// ----- test 3 -----
p0 = new String[] { "1111", "1111", "0000", "0000" };
p1 = new String[] { "1111", "1111", "0000", "0000" };
p2 = "YES";
all_right = KawigiEdit_RunTest(3, p0, p1, true, p2) && all_right;
// ------------------
// ----- test 4 -----
p0 = new String[] { "0110", "1001", "0110" };
p1 = new String[] { "1111", "0110", "0000" };
p2 = "YES";
all_right = KawigiEdit_RunTest(4, p0, p1, true, p2) && all_right;
// ------------------
// ----- test 5 -----
p0 = new String[] { "0000", "1111", "0000" };
p1 = new String[] { "1111", "0000", "1111" };
p2 = "NO";
all_right = KawigiEdit_RunTest(5, p0, p1, true, p2) && all_right;
// ------------------
if (all_right) {
System.out.println("You're a stud (at least on the example cases)!");
} else {
System.out.println("Some of the test cases had errors.");
}
}
// END KAWIGIEDIT TESTING
}
// Powered by KawigiEdit 2.1.4 (beta) modified by pivanof!