From 3accc9dfeeddf71e029878ccb8af33a1e7bbd283 Mon Sep 17 00:00:00 2001 From: konog98 <konog98@mi.fu-berlin.de> Date: Mon, 6 May 2024 16:14:50 +0200 Subject: [PATCH] =?UTF-8?q?Test=20files=20und=20visualizer=20hinzugef?= =?UTF-8?q?=C3=BCgt?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 4 +- requirements.txt | Bin 0 -> 92 bytes src/fortesting.py | 73 +- .../medium_test_set/instances/1.gr | 258 +++ .../medium_test_set/instances/10.gr | 726 ++++++++ .../medium_test_set/instances/11.gr | 872 +++++++++ .../medium_test_set/instances/12.gr | 232 +++ .../medium_test_set/instances/13.gr | 617 ++++++ .../medium_test_set/instances/14.gr | 1101 +++++++++++ .../medium_test_set/instances/15.gr | 163 ++ .../medium_test_set/instances/16.gr | 259 +++ .../medium_test_set/instances/17.gr | 343 ++++ .../medium_test_set/instances/18.gr | 402 ++++ .../medium_test_set/instances/19.gr | 451 +++++ .../medium_test_set/instances/2.gr | 678 +++++++ .../medium_test_set/instances/20.gr | 568 ++++++ .../medium_test_set/instances/21.gr | 199 ++ .../medium_test_set/instances/22.gr | 197 ++ .../medium_test_set/instances/23.gr | 266 +++ .../medium_test_set/instances/24.gr | 426 +++++ .../medium_test_set/instances/25.gr | 612 ++++++ .../medium_test_set/instances/26.gr | 671 +++++++ .../medium_test_set/instances/27.gr | 145 ++ .../medium_test_set/instances/28.gr | 215 +++ .../medium_test_set/instances/29.gr | 399 ++++ .../medium_test_set/instances/3.gr | 60 + .../medium_test_set/instances/30.gr | 185 ++ .../medium_test_set/instances/31.gr | 301 +++ .../medium_test_set/instances/32.gr | 387 ++++ .../medium_test_set/instances/33.gr | 568 ++++++ .../medium_test_set/instances/34.gr | 1191 ++++++++++++ .../medium_test_set/instances/35.gr | 1489 +++++++++++++++ .../medium_test_set/instances/36.gr | 81 + .../medium_test_set/instances/37.gr | 193 ++ .../medium_test_set/instances/38.gr | 372 ++++ .../medium_test_set/instances/39.gr | 378 ++++ .../medium_test_set/instances/4.gr | 140 ++ .../medium_test_set/instances/40.gr | 404 ++++ .../medium_test_set/instances/41.gr | 190 ++ .../medium_test_set/instances/42.gr | 197 ++ .../medium_test_set/instances/43.gr | 285 +++ .../medium_test_set/instances/44.gr | 1650 +++++++++++++++++ .../medium_test_set/instances/45.gr | 969 ++++++++++ .../medium_test_set/instances/46.gr | 1229 ++++++++++++ .../medium_test_set/instances/47.gr | 260 +++ .../medium_test_set/instances/48.gr | 373 ++++ .../medium_test_set/instances/49.gr | 423 +++++ .../medium_test_set/instances/5.gr | 251 +++ .../medium_test_set/instances/50.gr | 441 +++++ .../medium_test_set/instances/51.gr | 521 ++++++ .../medium_test_set/instances/52.gr | 821 ++++++++ .../medium_test_set/instances/53.gr | 234 +++ .../medium_test_set/instances/54.gr | 282 +++ .../medium_test_set/instances/55.gr | 381 ++++ .../medium_test_set/instances/56.gr | 505 +++++ .../medium_test_set/instances/57.gr | 592 ++++++ .../medium_test_set/instances/58.gr | 49 + .../medium_test_set/instances/59.gr | 65 + .../medium_test_set/instances/6.gr | 295 +++ .../medium_test_set/instances/60.gr | 289 +++ .../medium_test_set/instances/7.gr | 459 +++++ .../medium_test_set/instances/8.gr | 654 +++++++ .../medium_test_set/instances/9.gr | 719 +++++++ .../medium_test_set/solutions/1.sol | 122 ++ .../medium_test_set/solutions/10.sol | 333 ++++ .../medium_test_set/solutions/11.sol | 464 +++++ .../medium_test_set/solutions/12.sol | 124 ++ .../medium_test_set/solutions/13.sol | 175 ++ .../medium_test_set/solutions/14.sol | 286 +++ .../medium_test_set/solutions/15.sol | 54 + .../medium_test_set/solutions/16.sol | 86 + .../medium_test_set/solutions/17.sol | 114 ++ .../medium_test_set/solutions/18.sol | 123 ++ .../medium_test_set/solutions/19.sol | 139 ++ .../medium_test_set/solutions/2.sol | 327 ++++ .../medium_test_set/solutions/20.sol | 181 ++ .../medium_test_set/solutions/21.sol | 101 + .../medium_test_set/solutions/22.sol | 123 ++ .../medium_test_set/solutions/23.sol | 163 ++ .../medium_test_set/solutions/24.sol | 261 +++ .../medium_test_set/solutions/25.sol | 254 +++ .../medium_test_set/solutions/26.sol | 329 ++++ .../medium_test_set/solutions/27.sol | 72 + .../medium_test_set/solutions/28.sol | 107 ++ .../medium_test_set/solutions/29.sol | 199 ++ .../medium_test_set/solutions/3.sol | 20 + .../medium_test_set/solutions/30.sol | 92 + .../medium_test_set/solutions/31.sol | 150 ++ .../medium_test_set/solutions/32.sol | 193 ++ .../medium_test_set/solutions/33.sol | 162 ++ .../medium_test_set/solutions/34.sol | 309 +++ .../medium_test_set/solutions/35.sol | 384 ++++ .../medium_test_set/solutions/36.sol | 16 + .../medium_test_set/solutions/37.sol | 32 + .../medium_test_set/solutions/38.sol | 194 ++ .../medium_test_set/solutions/39.sol | 192 ++ .../medium_test_set/solutions/4.sol | 26 + .../medium_test_set/solutions/40.sol | 206 ++ .../medium_test_set/solutions/41.sol | 24 + .../medium_test_set/solutions/42.sol | 42 + .../medium_test_set/solutions/43.sol | 48 + .../medium_test_set/solutions/44.sol | 221 +++ .../medium_test_set/solutions/45.sol | 241 +++ .../medium_test_set/solutions/46.sol | 238 +++ .../medium_test_set/solutions/47.sol | 128 ++ .../medium_test_set/solutions/48.sol | 194 ++ .../medium_test_set/solutions/49.sol | 217 +++ .../medium_test_set/solutions/5.sol | 37 + .../medium_test_set/solutions/50.sol | 125 ++ .../medium_test_set/solutions/51.sol | 154 ++ .../medium_test_set/solutions/52.sol | 220 +++ .../medium_test_set/solutions/53.sol | 111 ++ .../medium_test_set/solutions/54.sol | 125 ++ .../medium_test_set/solutions/55.sol | 172 ++ .../medium_test_set/solutions/56.sol | 224 +++ .../medium_test_set/solutions/57.sol | 279 +++ .../medium_test_set/solutions/58.sol | 24 + .../medium_test_set/solutions/59.sol | 32 + .../medium_test_set/solutions/6.sol | 152 ++ .../medium_test_set/solutions/60.sol | 144 ++ .../medium_test_set/solutions/7.sol | 215 +++ .../medium_test_set/solutions/8.sol | 308 +++ .../medium_test_set/solutions/9.sol | 344 ++++ .../tiny_test_set/instances/complete_4_5.gr | 21 + .../instances/cycle_8_shuffled.gr | 9 + .../tiny_test_set/instances/cycle_8_sorted.gr | 9 + .../instances/grid_9_shuffled.gr | 13 + .../instances/ladder_4_4_shuffled.gr | 11 + .../instances/ladder_4_4_sorted.gr | 11 + .../tiny_test_set/instances/matching_4_4.gr | 5 + .../instances/path_9_shuffled.gr | 9 + .../tiny_test_set/instances/path_9_sorted.gr | 9 + .../tiny_test_set/instances/plane_5_6.gr | 11 + .../tiny_test_set/instances/star_6.gr | 7 + .../tiny_test_set/instances/tree_6_10.gr | 16 + .../tiny_test_set/instances/website_20.gr | 13 + .../tiny_test_set/solutions/complete_4_5.sol | 5 + .../solutions/cycle_8_shuffled.sol | 4 + .../solutions/cycle_8_sorted.sol | 4 + .../solutions/grid_9_shuffled.sol | 5 + .../solutions/ladder_4_4_shuffled.sol | 4 + .../solutions/ladder_4_4_sorted.sol | 4 + .../tiny_test_set/solutions/matching_4_4.sol | 4 + .../solutions/path_9_shuffled.sol | 4 + .../tiny_test_set/solutions/path_9_sorted.sol | 4 + .../tiny_test_set/solutions/plane_5_6.sol | 6 + .../tiny_test_set/solutions/star_6.sol | 6 + .../tiny_test_set/solutions/tree_6_10.sol | 10 + .../tiny_test_set/solutions/website_20.sol | 10 + src/main.py | 6 +- src/prob.lp | 29 + src/solution_instances/0.sol | 3 + src/solution_instances/1.gr | 122 ++ src/solution_instances/complete_4_5.gr | 5 + src/solution_instances/complete_4_5.sol | 5 + src/solution_instances/cycle_8_shuffled.gr | 4 + src/solution_instances/cycle_8_shuffled.sol | 4 + src/solution_instances/cycle_8_sorted.gr | 4 + src/solution_instances/cycle_8_sorted.sol | 4 + visualizer.py | 438 +++++ 160 files changed, 38703 insertions(+), 27 deletions(-) create mode 100644 requirements.txt create mode 100644 src/githubtests/medium_test_set/instances/1.gr create mode 100644 src/githubtests/medium_test_set/instances/10.gr create mode 100644 src/githubtests/medium_test_set/instances/11.gr create mode 100644 src/githubtests/medium_test_set/instances/12.gr create mode 100644 src/githubtests/medium_test_set/instances/13.gr create mode 100644 src/githubtests/medium_test_set/instances/14.gr create mode 100644 src/githubtests/medium_test_set/instances/15.gr create mode 100644 src/githubtests/medium_test_set/instances/16.gr create mode 100644 src/githubtests/medium_test_set/instances/17.gr create mode 100644 src/githubtests/medium_test_set/instances/18.gr create mode 100644 src/githubtests/medium_test_set/instances/19.gr create mode 100644 src/githubtests/medium_test_set/instances/2.gr create mode 100644 src/githubtests/medium_test_set/instances/20.gr create mode 100644 src/githubtests/medium_test_set/instances/21.gr create mode 100644 src/githubtests/medium_test_set/instances/22.gr create mode 100644 src/githubtests/medium_test_set/instances/23.gr create mode 100644 src/githubtests/medium_test_set/instances/24.gr create mode 100644 src/githubtests/medium_test_set/instances/25.gr create mode 100644 src/githubtests/medium_test_set/instances/26.gr create mode 100644 src/githubtests/medium_test_set/instances/27.gr create mode 100644 src/githubtests/medium_test_set/instances/28.gr create mode 100644 src/githubtests/medium_test_set/instances/29.gr create mode 100644 src/githubtests/medium_test_set/instances/3.gr create mode 100644 src/githubtests/medium_test_set/instances/30.gr create mode 100644 src/githubtests/medium_test_set/instances/31.gr create mode 100644 src/githubtests/medium_test_set/instances/32.gr create mode 100644 src/githubtests/medium_test_set/instances/33.gr create mode 100644 src/githubtests/medium_test_set/instances/34.gr create mode 100644 src/githubtests/medium_test_set/instances/35.gr create mode 100644 src/githubtests/medium_test_set/instances/36.gr create mode 100644 src/githubtests/medium_test_set/instances/37.gr create mode 100644 src/githubtests/medium_test_set/instances/38.gr create mode 100644 src/githubtests/medium_test_set/instances/39.gr create mode 100644 src/githubtests/medium_test_set/instances/4.gr create mode 100644 src/githubtests/medium_test_set/instances/40.gr create mode 100644 src/githubtests/medium_test_set/instances/41.gr create mode 100644 src/githubtests/medium_test_set/instances/42.gr create mode 100644 src/githubtests/medium_test_set/instances/43.gr create mode 100644 src/githubtests/medium_test_set/instances/44.gr create mode 100644 src/githubtests/medium_test_set/instances/45.gr create mode 100644 src/githubtests/medium_test_set/instances/46.gr create mode 100644 src/githubtests/medium_test_set/instances/47.gr create mode 100644 src/githubtests/medium_test_set/instances/48.gr create mode 100644 src/githubtests/medium_test_set/instances/49.gr create mode 100644 src/githubtests/medium_test_set/instances/5.gr create mode 100644 src/githubtests/medium_test_set/instances/50.gr create mode 100644 src/githubtests/medium_test_set/instances/51.gr create mode 100644 src/githubtests/medium_test_set/instances/52.gr create mode 100644 src/githubtests/medium_test_set/instances/53.gr create mode 100644 src/githubtests/medium_test_set/instances/54.gr create mode 100644 src/githubtests/medium_test_set/instances/55.gr create mode 100644 src/githubtests/medium_test_set/instances/56.gr create mode 100644 src/githubtests/medium_test_set/instances/57.gr create mode 100644 src/githubtests/medium_test_set/instances/58.gr create mode 100644 src/githubtests/medium_test_set/instances/59.gr create mode 100644 src/githubtests/medium_test_set/instances/6.gr create mode 100644 src/githubtests/medium_test_set/instances/60.gr create mode 100644 src/githubtests/medium_test_set/instances/7.gr create mode 100644 src/githubtests/medium_test_set/instances/8.gr create mode 100644 src/githubtests/medium_test_set/instances/9.gr create mode 100644 src/githubtests/medium_test_set/solutions/1.sol create mode 100644 src/githubtests/medium_test_set/solutions/10.sol create mode 100644 src/githubtests/medium_test_set/solutions/11.sol create mode 100644 src/githubtests/medium_test_set/solutions/12.sol create mode 100644 src/githubtests/medium_test_set/solutions/13.sol create mode 100644 src/githubtests/medium_test_set/solutions/14.sol create mode 100644 src/githubtests/medium_test_set/solutions/15.sol create mode 100644 src/githubtests/medium_test_set/solutions/16.sol create mode 100644 src/githubtests/medium_test_set/solutions/17.sol create mode 100644 src/githubtests/medium_test_set/solutions/18.sol create mode 100644 src/githubtests/medium_test_set/solutions/19.sol create mode 100644 src/githubtests/medium_test_set/solutions/2.sol create mode 100644 src/githubtests/medium_test_set/solutions/20.sol create mode 100644 src/githubtests/medium_test_set/solutions/21.sol create mode 100644 src/githubtests/medium_test_set/solutions/22.sol create mode 100644 src/githubtests/medium_test_set/solutions/23.sol create mode 100644 src/githubtests/medium_test_set/solutions/24.sol create mode 100644 src/githubtests/medium_test_set/solutions/25.sol create mode 100644 src/githubtests/medium_test_set/solutions/26.sol create mode 100644 src/githubtests/medium_test_set/solutions/27.sol create mode 100644 src/githubtests/medium_test_set/solutions/28.sol create mode 100644 src/githubtests/medium_test_set/solutions/29.sol create mode 100644 src/githubtests/medium_test_set/solutions/3.sol create mode 100644 src/githubtests/medium_test_set/solutions/30.sol create mode 100644 src/githubtests/medium_test_set/solutions/31.sol create mode 100644 src/githubtests/medium_test_set/solutions/32.sol create mode 100644 src/githubtests/medium_test_set/solutions/33.sol create mode 100644 src/githubtests/medium_test_set/solutions/34.sol create mode 100644 src/githubtests/medium_test_set/solutions/35.sol create mode 100644 src/githubtests/medium_test_set/solutions/36.sol create mode 100644 src/githubtests/medium_test_set/solutions/37.sol create mode 100644 src/githubtests/medium_test_set/solutions/38.sol create mode 100644 src/githubtests/medium_test_set/solutions/39.sol create mode 100644 src/githubtests/medium_test_set/solutions/4.sol create mode 100644 src/githubtests/medium_test_set/solutions/40.sol create mode 100644 src/githubtests/medium_test_set/solutions/41.sol create mode 100644 src/githubtests/medium_test_set/solutions/42.sol create mode 100644 src/githubtests/medium_test_set/solutions/43.sol create mode 100644 src/githubtests/medium_test_set/solutions/44.sol create mode 100644 src/githubtests/medium_test_set/solutions/45.sol create mode 100644 src/githubtests/medium_test_set/solutions/46.sol create mode 100644 src/githubtests/medium_test_set/solutions/47.sol create mode 100644 src/githubtests/medium_test_set/solutions/48.sol create mode 100644 src/githubtests/medium_test_set/solutions/49.sol create mode 100644 src/githubtests/medium_test_set/solutions/5.sol create mode 100644 src/githubtests/medium_test_set/solutions/50.sol create mode 100644 src/githubtests/medium_test_set/solutions/51.sol create mode 100644 src/githubtests/medium_test_set/solutions/52.sol create mode 100644 src/githubtests/medium_test_set/solutions/53.sol create mode 100644 src/githubtests/medium_test_set/solutions/54.sol create mode 100644 src/githubtests/medium_test_set/solutions/55.sol create mode 100644 src/githubtests/medium_test_set/solutions/56.sol create mode 100644 src/githubtests/medium_test_set/solutions/57.sol create mode 100644 src/githubtests/medium_test_set/solutions/58.sol create mode 100644 src/githubtests/medium_test_set/solutions/59.sol create mode 100644 src/githubtests/medium_test_set/solutions/6.sol create mode 100644 src/githubtests/medium_test_set/solutions/60.sol create mode 100644 src/githubtests/medium_test_set/solutions/7.sol create mode 100644 src/githubtests/medium_test_set/solutions/8.sol create mode 100644 src/githubtests/medium_test_set/solutions/9.sol create mode 100644 src/githubtests/tiny_test_set/instances/complete_4_5.gr create mode 100644 src/githubtests/tiny_test_set/instances/cycle_8_shuffled.gr create mode 100644 src/githubtests/tiny_test_set/instances/cycle_8_sorted.gr create mode 100644 src/githubtests/tiny_test_set/instances/grid_9_shuffled.gr create mode 100644 src/githubtests/tiny_test_set/instances/ladder_4_4_shuffled.gr create mode 100644 src/githubtests/tiny_test_set/instances/ladder_4_4_sorted.gr create mode 100644 src/githubtests/tiny_test_set/instances/matching_4_4.gr create mode 100644 src/githubtests/tiny_test_set/instances/path_9_shuffled.gr create mode 100644 src/githubtests/tiny_test_set/instances/path_9_sorted.gr create mode 100644 src/githubtests/tiny_test_set/instances/plane_5_6.gr create mode 100644 src/githubtests/tiny_test_set/instances/star_6.gr create mode 100644 src/githubtests/tiny_test_set/instances/tree_6_10.gr create mode 100644 src/githubtests/tiny_test_set/instances/website_20.gr create mode 100644 src/githubtests/tiny_test_set/solutions/complete_4_5.sol create mode 100644 src/githubtests/tiny_test_set/solutions/cycle_8_shuffled.sol create mode 100644 src/githubtests/tiny_test_set/solutions/cycle_8_sorted.sol create mode 100644 src/githubtests/tiny_test_set/solutions/grid_9_shuffled.sol create mode 100644 src/githubtests/tiny_test_set/solutions/ladder_4_4_shuffled.sol create mode 100644 src/githubtests/tiny_test_set/solutions/ladder_4_4_sorted.sol create mode 100644 src/githubtests/tiny_test_set/solutions/matching_4_4.sol create mode 100644 src/githubtests/tiny_test_set/solutions/path_9_shuffled.sol create mode 100644 src/githubtests/tiny_test_set/solutions/path_9_sorted.sol create mode 100644 src/githubtests/tiny_test_set/solutions/plane_5_6.sol create mode 100644 src/githubtests/tiny_test_set/solutions/star_6.sol create mode 100644 src/githubtests/tiny_test_set/solutions/tree_6_10.sol create mode 100644 src/githubtests/tiny_test_set/solutions/website_20.sol create mode 100644 src/prob.lp create mode 100644 src/solution_instances/0.sol create mode 100644 src/solution_instances/1.gr create mode 100644 src/solution_instances/complete_4_5.gr create mode 100644 src/solution_instances/complete_4_5.sol create mode 100644 src/solution_instances/cycle_8_shuffled.gr create mode 100644 src/solution_instances/cycle_8_shuffled.sol create mode 100644 src/solution_instances/cycle_8_sorted.gr create mode 100644 src/solution_instances/cycle_8_sorted.sol create mode 100644 visualizer.py diff --git a/README.md b/README.md index 7f0d7b7..10f316f 100644 --- a/README.md +++ b/README.md @@ -32,7 +32,7 @@ ``` In Windows run: ```bash - venv\Scripts\activate + .venv\Scripts\activate ``` 5. **Install the Dependencies:** @@ -45,4 +45,4 @@ 1. Geh sicher, dass alle Dependencies installiert sind. -2. \ No newline at end of file +2. **Install Poetry**: https://python-poetry.org/docs/ \ No newline at end of file diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 0000000000000000000000000000000000000000..4b00ddeab4db8bfb8ef5ed8c80c651d199c0bb45 GIT binary patch literal 92 zcmezWFOMOWp@gBFA)ld$A)BFs!Ir_6!I(jh!H7YR!H|KMfr}xJp_Cz)p@5+hEN2Lo VGXs+#*<yxdhD;P$L$F>01^_fM4z>UQ literal 0 HcmV?d00001 diff --git a/src/fortesting.py b/src/fortesting.py index 6ee4ef5..df28fda 100644 --- a/src/fortesting.py +++ b/src/fortesting.py @@ -1,12 +1,29 @@ import os from pulp import * +def count_initial_crossings(edges): + crossings = 0 + # Durchlaufe alle Kantenpaare und überprüfe, ob eine Kreuzung vorliegt + for index, (i, j) in enumerate(edges): + for k, l in edges[index+1:]: # Vergleiche nur nachfolgende Kanten + if i < k and j > l: + crossings += 1 + return crossings + +def count_crossings_via_variables(c_vars): + crossings = 0 + for c_var in c_vars.values(): + if c_var.varValue == 1: + crossings += 1 + return crossings + def solve_bipartite_minimization(graph_file): # Extrahiere den Basisnamen der Eingabedatei base_name = os.path.basename(graph_file) + new_base_name = base_name.replace('.gr', '.sol') # Erstelle den Ausgabepfad - output_file = os.path.join('solution_instances', base_name) + output_file = os.path.join('solution_instances', new_base_name) edges = [] with open(graph_file, "r") as file: @@ -20,48 +37,57 @@ def solve_bipartite_minimization(graph_file): else: x, y = map(int, line.split()) edges.append((x, y)) - + prob = LpProblem("Minimize_Crossings", LpMinimize) # Boolesche Variablen für relative Positionen innerhalb jeder Partition x = {(i, j): LpVariable(f"x_{i}_{j}", 0, 1, cat='Binary') for i in range(1, n0 + 1) for j in range(1, n0 + 1) if i < j} y = {(i, j): LpVariable(f"y_{i}_{j}", 0, 1, cat='Binary') for i in range(n0 + 1, n0 + n1 + 1) for j in range(n0 + 1, n0 + n1 + 1) if i != j} - #print("x:",x) - #print("y:",y) - + c = {(i, j, k, l): LpVariable(f"c_{i}_{j}_{k}_{l}", 0, 1, cat='Binary') for (i, j) in edges for (k, l) in edges if i < j and k < l and i < k and j != l} + """ # Crossing Variables c = {} for (i, j) in edges: for (k, l) in edges: if i < j and k < l and i < k and j != l: c[(i, j, k, l)] = LpVariable(f"c_{i}_{j}_{k}_{l}", 0, 1, cat='Binary') - + """ # Zielfunktion, die minimiert werden soll prob += lpSum(c.values()) - - # Crossing Constraints - for (i, j, k, l) in c: - if j < l: - prob += -c[(i, j, k, l)] <= y[(j, l)] - x[(i, k)] <= c[(i, j, k, l)] - if l > j: - prob += 1 - c[(i, j, k, l)] <= y[(l, j)] + x[(i, k)] <= 1 + c[(i, j, k, l)] - - # Constraints für x und y - for i in range(1, n0): - for j in range(i + 1, n0 + 1): - for k in range(j + 1, n0 + 1): - prob += 0 <= x[(i, j)] + x[(j, k)] - x[(i, k)] == 1 - for i in range(n0 + 1, n0 + n1): - for j in range(i + 1, n0 + n1 + 1): + # Crossing Constraints basierend auf Kantenpaaren + for (i, j) in edges: + for (k, l) in edges: + if i < j and k < l and i < k and j != l: # Grundbedingung für mögliche Kreuzungen + if j < l: + prob += -c[(i, j, k, l)] <= y[(j, l)] - x[(i, k)] <= c[(i, j, k, l)] + if l > j: + prob += 1 - c[(i, j, k, l)] <= y[(l, j)] + x[(i, k)] <= 1 + c[(i, j, k, l)] + + for i in range(n0 + 1, n0 + n1 - 1): + for j in range(i + 1, n0 + n1): for k in range(j + 1, n0 + n1 + 1): - prob += 0 <= y[(i, j)] + y[(j, k)] - y[(i, k)] <= 1 + prob += 0 <= y[(i, j)] + y[(j, k)] - y[(i, k)] <= 1 # Constraints für die relative Ordnung innerhalb der Partitionen for (i, j) in y: prob += y[(i, j)] + y[(j, i)] == 1 # genau einer muss wahr sein - + + initial_crossings = count_initial_crossings(edges) + print(f"Initial crossings edges: {initial_crossings}") + + initial_crossings1 = count_crossings_via_variables(c) + print(f"Initial crossings VAR (before solving): {initial_crossings1}") + + prob.writeLP("prob.lp") prob.solve() + + for key, var in c.items(): + print(f"c[{key}] = {var.varValue}") + + + final_crossings1 = count_crossings_via_variables(c) + print(f"Final crossings VAR (after solving): {final_crossings1}") print("Status:", LpStatus[prob.status]) @@ -91,5 +117,6 @@ def solve_bipartite_minimization(graph_file): print("No optimal solution found.") +#test_file = 'githubtests/tiny_test_set/instances/cycle_8_shuffled.gr' test_file = 'test_instances/0.gr' solve_bipartite_minimization(test_file) diff --git a/src/githubtests/medium_test_set/instances/1.gr b/src/githubtests/medium_test_set/instances/1.gr new file mode 100644 index 0000000..768a119 --- /dev/null +++ b/src/githubtests/medium_test_set/instances/1.gr @@ -0,0 +1,258 @@ +p ocr 136 122 257 +1 193 +1 257 +2 193 +3 193 +4 193 +5 193 +6 193 +7 193 +8 193 +9 193 +10 193 +11 193 +12 193 +13 193 +14 193 +15 193 +16 193 +17 193 +18 193 +19 193 +20 193 +21 193 +22 193 +23 193 +24 193 +25 193 +26 193 +27 193 +28 193 +29 193 +30 193 +31 193 +32 193 +33 193 +34 193 +35 193 +36 193 +37 193 +38 193 +39 193 +40 193 +41 193 +42 193 +43 193 +44 193 +45 193 +46 193 +47 193 +48 193 +49 193 +50 193 +51 193 +52 193 +53 193 +54 193 +55 193 +56 193 +57 193 +58 193 +59 193 +60 193 +61 193 +62 193 +63 193 +64 193 +65 193 +66 193 +67 193 +68 193 +69 193 +70 193 +71 193 +72 193 +73 193 +74 193 +75 193 +76 193 +77 193 +78 193 +79 193 +80 193 +81 193 +82 193 +83 193 +84 193 +85 193 +86 193 +87 193 +88 193 +89 193 +90 193 +91 193 +92 193 +93 193 +94 193 +95 193 +96 193 +97 193 +98 193 +99 193 +100 193 +101 193 +102 193 +103 193 +104 193 +105 193 +106 193 +107 193 +108 193 +109 193 +110 193 +111 193 +112 193 +113 193 +114 193 +115 193 +116 193 +117 193 +118 193 +119 193 +120 193 +121 137 +121 138 +121 139 +121 140 +121 141 +121 142 +121 143 +121 144 +121 145 +121 146 +121 147 +121 148 +121 149 +121 150 +121 151 +121 152 +121 153 +121 154 +121 155 +121 156 +121 157 +121 158 +121 159 +121 160 +121 161 +121 162 +121 163 +121 164 +121 165 +121 166 +121 167 +121 168 +121 169 +121 170 +121 171 +121 172 +121 173 +121 174 +121 175 +121 176 +121 177 +121 178 +121 179 +121 180 +121 181 +121 182 +121 183 +121 184 +121 185 +121 186 +121 187 +121 188 +121 189 +121 190 +121 191 +121 192 +121 193 +121 194 +121 195 +121 196 +121 197 +121 198 +121 199 +121 200 +121 201 +121 202 +121 203 +121 204 +121 205 +121 206 +121 207 +121 208 +121 209 +121 210 +121 211 +121 212 +121 213 +121 214 +121 215 +121 216 +121 217 +121 218 +121 219 +121 220 +121 221 +121 222 +121 223 +121 224 +121 225 +121 226 +121 227 +121 228 +121 229 +121 230 +121 231 +121 232 +121 233 +121 234 +121 235 +121 236 +121 237 +121 238 +121 239 +121 240 +121 241 +121 242 +121 243 +121 244 +121 245 +121 246 +121 247 +121 248 +121 249 +121 250 +121 251 +121 252 +121 253 +121 254 +121 255 +121 256 +121 258 +122 257 +123 257 +124 257 +125 257 +126 257 +127 257 +128 257 +129 257 +130 257 +131 257 +132 257 +133 257 +134 257 +135 257 +136 257 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/instances/10.gr b/src/githubtests/medium_test_set/instances/10.gr new file mode 100644 index 0000000..8c7f197 --- /dev/null +++ b/src/githubtests/medium_test_set/instances/10.gr @@ -0,0 +1,726 @@ +p ocr 393 333 725 +1 672 +2 507 +2 603 +4 487 +4 491 +4 604 +4 606 +4 652 +6 444 +6 593 +8 548 +17 458 +17 490 +17 590 +17 655 +17 716 +18 409 +18 477 +18 522 +20 397 +20 427 +20 510 +20 651 +20 689 +20 690 +24 426 +24 476 +24 545 +24 608 +26 457 +27 588 +27 677 +28 682 +29 483 +29 709 +30 579 +31 440 +34 518 +34 607 +37 433 +37 484 +42 418 +42 627 +42 717 +45 680 +46 411 +46 424 +48 406 +49 721 +52 461 +52 520 +52 713 +54 412 +54 570 +54 658 +58 498 +58 562 +60 691 +61 467 +61 569 +63 403 +63 508 +64 497 +65 505 +68 473 +68 543 +68 571 +68 704 +70 572 +71 723 +72 437 +72 446 +75 454 +75 710 +76 436 +78 399 +78 492 +78 583 +78 614 +78 663 +79 602 +79 609 +82 421 +86 521 +87 619 +87 666 +87 698 +88 533 +88 560 +88 635 +90 419 +90 452 +90 632 +93 465 +93 495 +93 542 +99 415 +99 695 +100 499 +100 509 +103 506 +105 536 +106 524 +106 589 +106 596 +106 637 +106 640 +106 642 +106 720 +108 670 +109 660 +111 410 +111 489 +111 650 +113 435 +113 462 +113 512 +113 550 +114 402 +114 493 +114 684 +118 430 +118 479 +123 481 +126 621 +127 455 +127 661 +129 448 +129 482 +129 618 +129 685 +129 703 +136 625 +137 405 +137 568 +138 525 +138 546 +142 587 +142 718 +143 464 +144 416 +145 540 +146 538 +147 620 +147 648 +149 705 +151 623 +151 669 +151 719 +162 683 +163 396 +166 646 +167 668 +168 401 +171 598 +174 459 +174 552 +175 478 +176 475 +176 534 +176 697 +178 420 +183 532 +183 726 +185 502 +185 503 +185 551 +186 613 +186 657 +188 434 +195 645 +196 601 +196 630 +197 439 +197 700 +199 413 +199 678 +202 699 +203 501 +203 557 +208 469 +209 722 +211 654 +211 673 +212 595 +214 580 +214 581 +214 686 +214 712 +215 395 +215 447 +220 639 +223 456 +223 575 +223 631 +224 563 +224 565 +224 612 +225 662 +227 693 +228 585 +229 553 +229 611 +235 474 +235 485 +236 488 +236 523 +236 664 +238 537 +238 665 +240 659 +244 408 +244 414 +244 471 +244 574 +244 577 +244 617 +244 707 +246 527 +247 470 +251 445 +251 687 +252 394 +252 594 +254 706 +255 584 +258 460 +258 714 +259 400 +260 559 +263 519 +264 541 +266 468 +266 530 +266 605 +266 679 +268 615 +268 702 +270 511 +271 592 +272 667 +274 715 +277 513 +277 610 +278 528 +279 692 +282 514 +282 539 +282 561 +282 674 +282 676 +286 564 +286 656 +287 500 +287 681 +288 438 +290 425 +290 451 +292 629 +292 671 +293 526 +293 582 +293 641 +295 558 +299 653 +300 555 +303 432 +304 443 +304 450 +304 556 +304 711 +305 466 +308 616 +308 675 +318 554 +318 624 +323 597 +323 628 +323 696 +327 463 +329 694 +331 724 +333 404 +333 453 +334 407 +334 549 +337 535 +338 422 +338 517 +339 431 +339 472 +339 515 +339 566 +339 567 +339 725 +344 622 +345 578 +346 441 +346 442 +349 496 +349 544 +351 638 +352 429 +352 531 +355 449 +360 486 +360 529 +361 647 +362 576 +369 708 +370 398 +370 636 +371 626 +371 688 +373 644 +374 591 +374 649 +376 573 +377 423 +378 516 +378 633 +382 480 +382 600 +384 494 +388 599 +391 504 +391 547 +391 701 +393 417 +393 428 +393 586 +393 634 +393 643 +43 395 +44 395 +45 395 +349 396 +260 400 +169 401 +170 401 +171 401 +115 402 +116 402 +117 402 +118 402 +64 403 +334 404 +49 406 +19 409 +20 409 +390 416 +391 416 +122 420 +384 420 +42 421 +83 421 +84 421 +85 421 +385 421 +378 423 +47 424 +48 424 +25 426 +26 426 +353 429 +354 429 +355 429 +86 430 +119 430 +120 430 +121 430 +179 430 +218 432 +219 432 +220 432 +38 433 +39 433 +40 433 +41 433 +215 433 +143 434 +190 434 +191 434 +285 434 +77 436 +78 436 +244 438 +289 438 +199 439 +316 439 +33 440 +34 440 +148 440 +268 442 +347 442 +348 442 +305 443 +266 444 +252 445 +73 446 +74 446 +75 446 +312 449 +356 449 +358 449 +359 449 +360 449 +97 451 +226 451 +227 451 +292 457 +175 459 +259 460 +114 462 +328 463 +329 463 +193 464 +194 464 +195 464 +241 465 +301 465 +302 465 +304 465 +297 466 +306 466 +308 466 +209 469 +248 470 +249 470 +250 470 +251 470 +272 471 +69 473 +70 473 +176 478 +123 480 +180 480 +383 480 +386 481 +387 481 +388 481 +30 483 +236 485 +112 489 +113 489 +18 490 +5 491 +7 491 +8 491 +265 491 +181 494 +182 494 +183 494 +65 497 +59 498 +60 498 +393 499 +204 501 +205 501 +206 501 +207 501 +208 501 +66 505 +67 505 +68 505 +104 506 +105 506 +271 511 +278 513 +339 517 +264 519 +55 521 +125 521 +126 521 +237 523 +238 523 +139 525 +140 525 +141 525 +142 525 +247 527 +279 528 +361 529 +89 533 +90 533 +177 534 +178 534 +338 535 +106 536 +239 537 +240 537 +147 538 +146 540 +6 541 +165 544 +166 544 +9 548 +10 548 +11 548 +12 548 +13 548 +14 548 +15 548 +16 548 +17 548 +335 549 +336 549 +337 549 +186 551 +319 554 +320 554 +321 554 +322 554 +323 554 +94 555 +95 555 +96 555 +225 555 +93 558 +152 558 +189 558 +296 558 +307 558 +261 559 +262 559 +263 559 +283 561 +284 561 +286 561 +325 561 +138 568 +62 569 +63 569 +56 570 +57 570 +58 570 +124 570 +351 572 +52 573 +363 576 +364 576 +365 576 +366 576 +367 576 +368 576 +369 576 +346 578 +31 579 +87 581 +256 584 +257 584 +258 584 +229 585 +145 587 +192 587 +389 587 +293 588 +107 589 +109 589 +221 589 +273 592 +274 592 +291 592 +253 594 +254 594 +213 595 +214 595 +172 598 +173 598 +174 598 +144 599 +80 602 +81 602 +82 602 +3 603 +4 603 +35 607 +36 607 +37 607 +230 611 +231 611 +232 611 +233 611 +234 611 +235 611 +245 612 +246 612 +187 613 +188 613 +71 615 +350 615 +299 619 +127 621 +345 622 +137 625 +28 629 +197 630 +290 631 +91 632 +92 632 +300 632 +379 633 +380 633 +381 633 +382 633 +371 636 +72 638 +108 639 +294 641 +295 641 +374 644 +196 645 +167 646 +362 647 +32 648 +149 648 +51 649 +375 649 +377 649 +21 651 +22 651 +23 651 +24 651 +303 653 +212 654 +287 656 +216 659 +217 659 +224 659 +242 659 +110 660 +111 660 +128 661 +129 661 +98 662 +99 662 +79 663 +27 667 +168 668 +222 670 +223 670 +2 672 +198 675 +309 675 +310 675 +311 675 +313 675 +314 675 +315 675 +317 675 +318 675 +357 675 +200 678 +201 678 +202 678 +164 679 +267 679 +269 679 +270 679 +46 680 +288 681 +29 682 +163 683 +130 685 +131 685 +132 685 +133 685 +134 685 +135 685 +136 685 +372 688 +373 688 +61 691 +280 692 +281 692 +282 692 +228 693 +330 694 +331 694 +101 695 +102 695 +103 695 +392 695 +243 696 +324 696 +326 696 +327 696 +203 699 +100 701 +150 705 +151 705 +255 706 +370 708 +76 710 +53 713 +54 713 +275 715 +276 715 +277 715 +88 717 +153 719 +154 719 +155 719 +156 719 +157 719 +158 719 +159 719 +160 719 +161 719 +162 719 +298 719 +50 721 +376 721 +210 722 +211 722 +352 723 +332 724 +333 724 +340 725 +341 725 +342 725 +343 725 +344 725 +184 726 +185 726 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/instances/11.gr b/src/githubtests/medium_test_set/instances/11.gr new file mode 100644 index 0000000..6625995 --- /dev/null +++ b/src/githubtests/medium_test_set/instances/11.gr @@ -0,0 +1,872 @@ +p ocr 408 464 871 +1 450 +1 756 +1 808 +1 842 +4 456 +4 554 +6 578 +7 600 +9 626 +9 858 +11 431 +11 630 +12 747 +15 528 +15 545 +15 599 +15 682 +15 712 +20 548 +22 496 +22 648 +26 671 +27 440 +29 798 +30 770 +31 598 +32 526 +32 850 +34 776 +35 815 +36 458 +36 659 +36 722 +36 853 +38 449 +38 549 +38 582 +38 779 +38 840 +40 521 +40 658 +41 803 +42 559 +45 447 +45 484 +45 519 +45 765 +50 532 +51 499 +51 520 +51 824 +52 577 +53 834 +56 653 +56 694 +56 820 +60 621 +60 730 +62 797 +63 472 +63 839 +64 775 +66 523 +66 550 +66 565 +66 758 +72 500 +72 606 +72 633 +72 701 +72 852 +73 446 +74 463 +75 522 +78 445 +79 455 +79 787 +81 745 +82 862 +83 724 +84 435 +85 514 +89 432 +89 683 +89 848 +91 540 +92 478 +92 786 +92 847 +94 442 +96 426 +96 602 +96 686 +96 703 +96 832 +97 489 +97 495 +97 546 +100 618 +102 678 +102 816 +102 822 +103 465 +103 576 +103 688 +105 569 +105 677 +105 744 +105 746 +107 512 +107 524 +107 595 +109 743 +112 772 +113 571 +113 697 +113 705 +113 841 +113 859 +114 553 +115 580 +116 413 +119 646 +120 608 +121 471 +121 510 +121 668 +121 800 +121 835 +122 727 +123 785 +123 788 +124 473 +130 497 +130 828 +133 454 +137 679 +141 506 +141 617 +142 487 +142 561 +147 536 +147 583 +147 622 +150 438 +150 562 +150 802 +150 836 +152 625 +153 474 +153 498 +153 681 +153 846 +154 837 +155 774 +157 436 +157 742 +157 751 +157 783 +158 655 +160 789 +160 860 +164 604 +164 741 +165 423 +165 636 +165 734 +167 592 +167 855 +168 443 +168 494 +171 467 +171 502 +171 537 +171 640 +173 414 +173 416 +173 420 +173 433 +173 593 +173 737 +174 470 +175 482 +175 717 +175 792 +176 696 +176 768 +176 844 +177 453 +179 564 +179 669 +179 728 +181 585 +181 651 +181 684 +181 736 +182 807 +183 430 +183 589 +187 620 +187 634 +189 624 +191 695 +195 693 +196 476 +196 614 +197 533 +198 650 +198 769 +199 511 +199 814 +201 601 +203 615 +203 817 +204 475 +204 610 +204 619 +205 863 +207 612 +209 760 +210 444 +213 672 +213 708 +213 795 +213 799 +214 647 +214 868 +215 481 +215 530 +216 488 +216 535 +217 643 +218 421 +218 871 +221 466 +221 725 +222 838 +223 628 +225 660 +226 422 +226 754 +227 452 +227 867 +228 699 +229 517 +229 771 +231 503 +231 632 +231 635 +231 719 +232 627 +234 685 +235 557 +235 762 +240 411 +240 527 +240 665 +240 849 +246 829 +246 857 +248 570 +249 513 +249 704 +249 759 +249 851 +251 597 +252 831 +255 542 +256 529 +256 706 +256 707 +256 778 +256 869 +258 715 +258 872 +259 493 +260 830 +262 781 +264 572 +265 594 +268 459 +268 508 +268 766 +268 825 +269 700 +270 641 +270 657 +270 821 +271 566 +271 586 +271 613 +271 791 +271 866 +273 451 +274 560 +277 419 +277 434 +277 538 +277 638 +277 709 +277 777 +278 609 +279 573 +280 629 +280 720 +282 427 +282 462 +282 485 +282 656 +282 670 +282 680 +282 689 +282 861 +283 516 +284 552 +284 674 +284 711 +285 749 +286 865 +287 412 +287 464 +288 424 +288 539 +288 811 +289 531 +291 417 +295 579 +295 790 +296 543 +296 623 +297 854 +300 479 +302 486 +302 731 +302 856 +303 492 +303 568 +303 813 +306 504 +308 448 +308 662 +311 556 +315 870 +316 664 +318 675 +318 805 +319 429 +319 750 +319 833 +323 515 +323 755 +323 801 +323 843 +324 691 +324 714 +326 534 +327 468 +327 563 +327 611 +327 713 +327 748 +327 757 +328 687 +329 409 +329 437 +329 555 +329 702 +329 735 +330 477 +330 525 +330 773 +330 784 +330 864 +336 826 +339 483 +339 652 +339 767 +340 654 +340 733 +341 596 +341 631 +341 782 +345 457 +345 649 +346 753 +348 461 +348 793 +349 667 +350 469 +350 480 +350 603 +350 639 +350 718 +350 729 +350 806 +350 810 +351 558 +352 587 +355 642 +357 616 +357 692 +357 827 +359 418 +359 698 +359 794 +360 644 +360 723 +361 425 +363 661 +363 818 +364 460 +365 410 +365 415 +365 428 +365 567 +365 590 +365 605 +366 505 +371 439 +371 764 +371 823 +373 491 +373 501 +373 509 +373 645 +373 710 +373 716 +373 752 +373 809 +373 819 +373 845 +375 518 +375 738 +375 804 +376 541 +377 763 +378 721 +381 637 +385 544 +385 676 +385 739 +386 490 +386 584 +387 551 +387 588 +387 666 +388 732 +389 507 +389 591 +389 690 +389 761 +390 780 +391 575 +392 673 +397 726 +397 796 +399 607 +402 441 +404 574 +404 740 +404 812 +407 547 +408 581 +408 663 +117 413 +118 413 +119 413 +287 417 +360 418 +152 421 +166 423 +167 423 +362 425 +363 425 +251 426 +43 430 +184 430 +186 430 +399 430 +90 432 +91 432 +381 435 +28 440 +29 440 +216 441 +95 442 +97 442 +135 442 +211 444 +212 444 +213 444 +79 445 +74 446 +36 448 +304 448 +388 451 +178 453 +179 453 +96 454 +134 454 +365 460 +75 463 +219 464 +289 464 +100 465 +222 466 +175 470 +64 472 +125 473 +126 473 +127 473 +128 473 +129 473 +130 473 +197 476 +131 477 +245 477 +333 477 +334 477 +335 477 +336 477 +93 478 +94 478 +301 479 +302 479 +47 484 +48 484 +49 484 +50 484 +322 484 +143 487 +144 487 +145 487 +147 487 +369 487 +273 490 +260 493 +169 494 +170 494 +172 494 +173 494 +354 494 +44 495 +98 495 +99 495 +101 495 +103 495 +309 495 +307 504 +308 504 +146 505 +367 505 +368 505 +370 505 +371 505 +142 506 +86 514 +87 514 +88 514 +89 514 +284 516 +392 517 +76 522 +77 522 +78 522 +340 523 +16 528 +17 528 +18 528 +19 528 +20 528 +217 530 +403 530 +286 531 +290 531 +51 532 +198 533 +60 534 +404 535 +355 537 +153 539 +92 540 +121 541 +256 542 +386 544 +408 547 +21 548 +22 548 +285 552 +115 553 +46 554 +102 554 +321 554 +312 556 +313 556 +314 556 +315 556 +206 557 +236 557 +238 557 +239 557 +240 557 +352 558 +185 559 +323 559 +275 560 +276 560 +277 560 +151 562 +288 562 +104 568 +305 568 +306 568 +249 570 +265 572 +280 573 +257 575 +347 575 +393 575 +394 575 +395 575 +397 575 +53 577 +187 578 +116 580 +171 587 +202 587 +390 591 +266 594 +267 594 +268 594 +108 595 +109 595 +342 596 +343 596 +344 596 +345 596 +137 597 +32 598 +8 600 +9 600 +203 601 +353 601 +165 604 +366 605 +73 606 +188 607 +189 607 +401 608 +402 608 +279 609 +205 610 +300 612 +272 613 +387 613 +204 615 +105 618 +148 622 +149 622 +150 622 +113 623 +68 624 +163 624 +192 624 +193 624 +194 624 +195 624 +220 625 +221 625 +233 627 +234 627 +224 628 +225 628 +12 630 +120 634 +232 635 +380 637 +382 637 +384 637 +385 637 +278 638 +271 641 +356 642 +357 642 +218 643 +361 644 +376 646 +154 648 +229 649 +199 650 +67 652 +69 652 +70 652 +71 652 +72 652 +281 652 +159 655 +160 655 +41 658 +226 660 +359 664 +274 666 +350 667 +180 669 +181 669 +27 671 +215 672 +253 672 +348 673 +319 675 +378 677 +324 678 +138 679 +139 679 +140 679 +141 679 +235 685 +329 687 +283 689 +316 692 +196 693 +282 695 +177 696 +207 697 +298 697 +346 699 +270 700 +330 702 +258 706 +396 706 +61 713 +62 713 +325 714 +326 714 +191 720 +107 721 +85 724 +383 724 +123 727 +328 730 +303 731 +389 732 +341 733 +182 736 +174 737 +377 738 +400 738 +405 740 +406 740 +407 740 +158 742 +65 743 +110 743 +111 743 +297 743 +82 745 +13 747 +14 747 +15 747 +291 749 +4 750 +374 752 +375 752 +230 753 +231 753 +227 754 +210 760 +84 763 +106 763 +379 763 +31 770 +339 772 +156 774 +157 774 +112 775 +35 776 +39 779 +40 779 +391 780 +263 781 +264 781 +124 785 +80 787 +81 787 +161 789 +162 789 +164 789 +190 789 +296 790 +176 792 +349 793 +6 796 +63 797 +30 798 +42 803 +183 807 +2 808 +3 808 +5 808 +7 808 +320 808 +398 808 +351 810 +200 814 +201 814 +37 815 +38 815 +310 815 +364 818 +57 820 +58 820 +59 820 +327 820 +372 823 +373 823 +52 824 +269 825 +66 826 +337 826 +338 826 +132 828 +133 828 +331 828 +247 829 +248 829 +261 830 +262 830 +214 831 +54 834 +55 834 +56 834 +122 835 +24 837 +25 837 +26 837 +223 838 +45 843 +23 846 +155 846 +241 849 +243 849 +244 849 +246 849 +294 849 +332 849 +33 850 +34 850 +136 851 +250 851 +252 851 +311 853 +114 854 +168 855 +10 858 +11 858 +83 862 +208 863 +209 863 +237 863 +299 863 +242 865 +292 865 +293 865 +295 865 +228 867 +254 868 +255 868 +317 870 +318 870 +358 870 +259 872 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/instances/12.gr b/src/githubtests/medium_test_set/instances/12.gr new file mode 100644 index 0000000..e56435a --- /dev/null +++ b/src/githubtests/medium_test_set/instances/12.gr @@ -0,0 +1,232 @@ +p ocr 108 124 231 +2 147 +2 171 +2 228 +3 201 +4 126 +4 130 +4 177 +5 207 +6 114 +6 123 +8 198 +8 212 +11 143 +12 151 +12 191 +12 204 +13 134 +14 145 +14 188 +16 167 +16 197 +17 112 +17 158 +17 173 +17 175 +17 219 +17 220 +18 179 +18 218 +19 115 +19 117 +19 154 +19 169 +19 196 +22 118 +22 131 +22 166 +24 211 +25 136 +37 181 +37 210 +38 142 +38 144 +38 165 +38 172 +38 203 +39 120 +41 230 +42 111 +42 113 +42 190 +42 192 +43 125 +43 127 +43 160 +44 150 +44 163 +44 222 +45 133 +50 183 +51 187 +52 156 +53 225 +53 231 +54 153 +55 178 +57 223 +58 184 +61 174 +62 168 +62 193 +62 206 +62 217 +62 221 +65 110 +65 205 +67 137 +67 186 +68 161 +70 139 +70 209 +71 138 +71 200 +73 109 +74 124 +74 189 +77 119 +77 148 +77 180 +77 226 +77 227 +80 135 +80 157 +81 152 +81 164 +83 116 +84 159 +85 185 +85 216 +89 199 +90 129 +90 149 +90 208 +90 214 +94 121 +94 146 +94 170 +94 229 +95 132 +96 195 +96 213 +96 232 +97 182 +97 224 +98 194 +98 202 +98 215 +101 128 +101 141 +102 155 +103 176 +107 122 +107 162 +108 140 +16 109 +35 111 +76 111 +94 111 +106 111 +42 116 +104 116 +62 120 +19 122 +31 122 +70 123 +6 125 +86 129 +95 129 +15 130 +20 130 +21 130 +69 130 +72 130 +83 130 +65 131 +37 132 +12 133 +60 133 +96 134 +14 136 +10 139 +59 139 +77 139 +87 139 +100 139 +34 140 +84 140 +5 141 +63 141 +17 143 +46 143 +89 150 +23 153 +38 153 +11 155 +81 156 +3 157 +48 157 +67 159 +4 161 +39 164 +25 165 +71 169 +41 174 +97 175 +9 176 +36 176 +58 176 +78 176 +79 176 +2 178 +90 179 +51 181 +8 183 +50 184 +75 184 +26 186 +33 186 +56 186 +64 186 +102 186 +22 187 +27 187 +40 187 +52 188 +55 189 +43 191 +57 194 +66 195 +82 195 +103 195 +108 197 +85 199 +1 200 +18 200 +28 200 +30 200 +99 200 +47 201 +53 201 +98 205 +74 207 +93 207 +49 211 +107 211 +7 212 +29 212 +61 212 +88 212 +91 212 +80 217 +73 223 +44 224 +101 226 +54 228 +13 229 +45 230 +24 231 +32 231 +92 231 +105 231 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/instances/13.gr b/src/githubtests/medium_test_set/instances/13.gr new file mode 100644 index 0000000..01c0307 --- /dev/null +++ b/src/githubtests/medium_test_set/instances/13.gr @@ -0,0 +1,617 @@ +p ocr 165 175 616 +1 257 +1 339 +2 175 +2 188 +2 214 +2 237 +2 243 +2 244 +2 246 +2 287 +2 299 +2 316 +3 205 +3 234 +3 324 +3 332 +3 333 +4 217 +4 250 +4 269 +4 309 +5 184 +5 199 +5 252 +5 273 +6 177 +6 188 +6 250 +6 253 +6 269 +6 309 +7 177 +7 237 +7 241 +7 247 +7 317 +8 213 +8 240 +8 296 +9 182 +9 209 +10 198 +10 213 +10 220 +10 232 +10 263 +10 296 +11 190 +11 222 +11 306 +12 188 +12 214 +12 243 +12 246 +12 325 +13 218 +13 290 +14 170 +14 191 +14 227 +14 257 +14 320 +15 279 +15 287 +15 292 +16 195 +16 256 +16 340 +17 190 +17 202 +17 221 +17 222 +17 280 +18 245 +18 247 +18 316 +19 168 +19 205 +19 208 +19 234 +19 304 +19 324 +19 327 +20 201 +20 290 +21 239 +21 305 +22 228 +23 177 +23 188 +24 171 +24 258 +25 185 +25 318 +25 332 +25 333 +26 190 +26 222 +26 280 +27 248 +27 297 +27 308 +28 169 +28 267 +28 331 +29 197 +29 215 +29 242 +30 248 +31 181 +31 330 +32 210 +32 267 +32 294 +32 302 +32 331 +33 188 +33 209 +33 253 +33 325 +34 168 +34 205 +34 234 +34 304 +34 327 +35 228 +35 233 +36 181 +37 254 +37 313 +38 332 +38 333 +39 239 +39 305 +40 182 +40 209 +40 217 +41 168 +41 208 +41 256 +41 268 +42 166 +42 211 +42 266 +42 271 +42 289 +42 311 +43 184 +43 284 +44 210 +44 303 +45 248 +45 308 +46 287 +46 316 +47 167 +47 213 +47 240 +48 175 +48 244 +48 251 +48 299 +48 306 +49 169 +49 196 +49 200 +49 232 +49 296 +50 195 +50 256 +50 285 +50 322 +51 220 +51 263 +51 272 +52 228 +53 172 +53 184 +53 194 +53 284 +53 295 +53 314 +53 326 +54 232 +54 296 +55 176 +55 207 +55 212 +55 274 +55 294 +55 302 +55 303 +56 240 +56 296 +57 218 +57 290 +58 248 +58 330 +59 209 +59 217 +59 253 +59 269 +60 170 +60 192 +60 261 +61 276 +61 339 +62 228 +62 233 +62 265 +63 221 +63 222 +63 235 +63 280 +64 216 +64 247 +64 287 +64 316 +65 187 +65 190 +65 224 +65 230 +65 251 +65 282 +65 298 +65 306 +65 338 +66 277 +66 286 +67 215 +67 231 +67 278 +67 300 +68 211 +69 173 +69 211 +69 266 +70 226 +70 259 +70 270 +70 301 +70 320 +70 334 +70 337 +71 182 +71 217 +71 264 +71 277 +71 286 +71 310 +71 335 +72 169 +72 207 +72 232 +72 267 +72 302 +73 167 +73 198 +73 213 +73 263 +74 210 +74 303 +75 201 +75 225 +75 229 +75 262 +75 290 +75 291 +76 197 +76 215 +76 242 +77 203 +77 206 +77 264 +77 277 +77 286 +77 310 +77 335 +78 238 +78 276 +78 339 +79 169 +79 267 +80 224 +80 237 +80 241 +80 251 +81 218 +81 262 +81 290 +81 291 +82 220 +82 240 +83 167 +83 228 +83 240 +84 241 +84 245 +84 247 +85 178 +85 330 +86 183 +86 283 +86 318 +86 321 +86 323 +87 210 +87 212 +87 303 +88 235 +88 280 +89 245 +89 247 +90 170 +90 192 +90 319 +90 320 +90 329 +91 185 +91 283 +91 318 +91 321 +92 186 +92 208 +92 268 +93 168 +93 208 +93 256 +93 340 +94 170 +94 174 +94 181 +94 219 +94 236 +94 261 +94 293 +95 239 +95 305 +96 201 +96 229 +96 322 +97 221 +97 235 +98 180 +98 216 +98 217 +98 247 +98 255 +98 279 +98 287 +98 317 +98 328 +99 229 +99 322 +100 211 +100 266 +101 299 +101 306 +101 316 +102 238 +102 276 +103 205 +103 234 +103 332 +104 178 +104 226 +104 227 +104 239 +104 248 +104 249 +104 260 +104 330 +105 171 +105 218 +105 256 +105 322 +106 187 +106 224 +106 230 +106 241 +106 245 +106 282 +106 298 +106 306 +106 316 +106 338 +107 228 +107 233 +107 265 +108 175 +108 237 +108 251 +109 214 +109 287 +109 292 +109 325 +110 278 +110 294 +110 300 +111 220 +111 240 +111 296 +112 240 +112 296 +113 183 +113 189 +113 197 +113 242 +113 275 +113 323 +114 202 +114 221 +114 235 +114 280 +115 286 +115 290 +115 291 +116 286 +116 290 +116 291 +117 220 +117 240 +117 272 +118 287 +118 316 +119 211 +119 254 +119 313 +120 179 +120 223 +120 239 +120 248 +120 249 +120 297 +120 305 +121 186 +121 195 +121 208 +121 258 +121 340 +122 176 +122 210 +122 212 +122 231 +122 274 +122 278 +122 294 +122 300 +123 215 +123 242 +124 254 +124 273 +125 171 +125 186 +125 256 +125 258 +125 268 +126 197 +126 242 +127 191 +127 227 +127 260 +127 288 +128 177 +128 188 +128 237 +129 218 +129 225 +129 229 +129 262 +129 322 +130 167 +130 213 +131 195 +131 256 +132 247 +132 316 +133 288 +133 339 +134 167 +134 228 +134 240 +134 272 +134 312 +135 226 +135 239 +135 301 +135 305 +135 336 +136 184 +136 199 +136 252 +136 273 +136 284 +136 307 +137 193 +137 221 +137 235 +137 315 +138 169 +138 196 +138 200 +138 331 +139 190 +139 280 +140 175 +140 237 +141 252 +141 254 +141 273 +142 180 +142 182 +142 203 +142 206 +142 209 +142 217 +142 255 +142 279 +142 292 +142 310 +142 325 +142 328 +142 335 +143 182 +143 209 +144 170 +144 178 +144 181 +144 330 +145 166 +145 173 +145 211 +145 238 +145 266 +145 271 +145 289 +145 311 +146 196 +146 207 +146 296 +146 303 +147 207 +147 232 +147 296 +148 189 +148 283 +148 321 +148 323 +149 184 +149 199 +149 284 +149 307 +150 183 +150 189 +150 275 +150 283 +151 171 +151 195 +151 258 +152 170 +152 178 +152 257 +152 260 +152 288 +152 339 +153 196 +153 210 +153 303 +153 331 +154 172 +154 184 +154 193 +154 194 +154 235 +154 284 +154 295 +154 314 +154 315 +154 326 +155 171 +155 201 +155 218 +155 290 +156 254 +156 273 +157 205 +157 234 +158 167 +158 263 +158 272 +158 312 +159 204 +159 248 +159 281 +159 308 +160 278 +160 300 +161 177 +161 217 +161 250 +161 317 +162 171 +162 195 +162 201 +162 285 +162 322 +163 190 +163 222 +163 306 +164 226 +164 227 +164 320 +165 191 +165 257 +165 288 +165 339 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/instances/14.gr b/src/githubtests/medium_test_set/instances/14.gr new file mode 100644 index 0000000..2efda83 --- /dev/null +++ b/src/githubtests/medium_test_set/instances/14.gr @@ -0,0 +1,1101 @@ +p ocr 288 286 1100 +1 364 +1 402 +1 525 +2 342 +2 386 +2 406 +2 415 +2 456 +2 466 +2 503 +3 358 +3 371 +3 468 +3 472 +3 534 +4 349 +4 380 +4 427 +4 556 +5 327 +5 329 +5 342 +5 413 +5 458 +5 503 +6 316 +6 510 +6 563 +7 357 +7 436 +7 447 +7 554 +8 289 +8 505 +8 526 +8 565 +8 566 +9 311 +9 372 +9 469 +10 421 +10 533 +10 543 +11 289 +11 296 +11 303 +11 308 +11 403 +11 438 +11 488 +11 505 +11 512 +11 566 +12 427 +12 431 +12 448 +13 319 +13 341 +13 364 +14 292 +14 313 +14 464 +15 295 +15 305 +15 345 +15 398 +15 414 +15 542 +16 379 +16 395 +16 404 +16 405 +16 432 +16 450 +16 493 +16 545 +16 560 +16 573 +17 359 +17 412 +17 413 +17 523 +18 314 +18 321 +18 412 +19 333 +19 479 +20 368 +20 371 +21 335 +21 432 +21 450 +21 467 +21 493 +21 545 +21 560 +21 562 +21 573 +22 345 +22 542 +23 381 +23 391 +23 520 +24 429 +24 515 +25 304 +25 322 +25 409 +25 459 +26 358 +26 442 +26 472 +26 539 +27 313 +27 464 +28 291 +28 369 +28 388 +28 423 +28 462 +28 474 +29 327 +29 486 +30 402 +30 525 +31 313 +31 390 +31 400 +31 470 +31 503 +32 312 +32 365 +32 447 +33 319 +33 341 +33 497 +34 299 +34 343 +34 362 +34 382 +34 401 +34 420 +34 508 +34 527 +34 541 +35 483 +35 527 +35 541 +36 307 +36 384 +36 452 +36 487 +37 303 +37 416 +37 549 +38 330 +38 334 +38 349 +38 427 +38 444 +38 448 +39 310 +39 563 +40 326 +40 394 +40 448 +40 546 +41 323 +41 501 +42 397 +42 413 +43 416 +43 418 +43 421 +43 449 +43 507 +44 397 +44 443 +45 303 +45 416 +46 305 +46 361 +46 398 +47 297 +47 370 +47 490 +47 491 +47 520 +48 352 +49 326 +49 429 +49 498 +49 515 +49 538 +50 304 +50 322 +50 453 +50 481 +50 552 +51 377 +51 409 +51 500 +52 345 +52 542 +53 309 +53 344 +53 387 +53 495 +53 540 +53 572 +54 364 +55 369 +55 388 +55 461 +55 474 +55 501 +56 354 +56 453 +56 552 +57 362 +57 508 +58 319 +58 497 +59 376 +59 403 +59 505 +59 565 +60 394 +60 512 +61 303 +61 416 +62 452 +62 487 +62 535 +63 388 +63 461 +63 474 +64 310 +64 551 +65 296 +65 383 +65 554 +65 566 +66 381 +66 520 +67 293 +67 320 +67 332 +67 351 +67 360 +67 377 +67 409 +67 417 +67 489 +67 500 +68 302 +68 335 +68 379 +68 389 +68 396 +68 425 +68 430 +68 432 +69 339 +69 357 +69 411 +69 436 +69 530 +70 326 +70 448 +71 290 +71 306 +71 368 +71 391 +71 482 +71 490 +71 520 +72 381 +72 391 +72 426 +72 480 +73 336 +73 461 +74 381 +74 520 +75 310 +75 360 +76 397 +76 413 +76 424 +76 440 +76 473 +77 341 +77 364 +78 325 +78 467 +78 544 +78 562 +79 353 +79 366 +79 367 +79 467 +79 499 +79 544 +80 375 +80 385 +80 485 +80 557 +81 368 +81 531 +82 364 +82 525 +83 349 +83 395 +83 404 +83 405 +83 444 +83 514 +83 518 +83 555 +84 343 +84 362 +84 453 +85 292 +85 313 +85 373 +85 445 +86 303 +86 408 +86 431 +86 448 +86 512 +86 546 +87 399 +87 435 +88 306 +88 368 +88 381 +89 311 +89 392 +89 428 +90 320 +90 360 +90 417 +91 421 +91 507 +92 297 +92 318 +92 433 +92 522 +92 537 +93 323 +93 501 +94 348 +94 353 +94 429 +94 498 +94 538 +95 347 +95 397 +95 400 +95 445 +96 290 +96 297 +96 306 +96 475 +96 494 +96 522 +96 548 +97 311 +97 372 +98 338 +98 516 +98 550 +99 421 +99 533 +100 294 +100 375 +100 385 +100 535 +100 557 +101 402 +102 413 +102 532 +103 318 +103 350 +103 433 +103 553 +104 329 +104 410 +105 400 +105 486 +106 339 +106 368 +106 371 +106 391 +106 472 +106 480 +106 482 +106 519 +106 539 +107 379 +107 396 +107 405 +108 312 +108 442 +109 309 +109 344 +109 411 +109 436 +109 530 +109 547 +109 554 +110 302 +110 430 +111 305 +111 380 +111 556 +112 314 +112 321 +112 443 +112 446 +112 454 +112 471 +112 486 +112 517 +112 532 +113 310 +114 447 +114 554 +115 308 +115 340 +115 376 +115 438 +116 303 +116 416 +117 467 +117 514 +117 518 +117 528 +118 327 +118 486 +118 532 +119 397 +119 400 +119 443 +120 382 +120 433 +120 483 +120 506 +120 527 +120 541 +121 303 +121 416 +121 418 +121 419 +121 465 +121 488 +122 315 +122 465 +122 504 +123 317 +123 502 +123 533 +123 543 +123 564 +124 431 +124 448 +125 421 +125 507 +126 376 +126 403 +126 438 +127 381 +127 468 +127 477 +128 554 +128 566 +129 329 +129 342 +129 386 +129 406 +129 410 +129 458 +130 298 +130 311 +130 392 +130 561 +131 298 +131 372 +131 378 +131 549 +131 561 +132 293 +132 510 +133 333 +133 375 +133 479 +133 485 +133 557 +134 359 +134 412 +134 473 +134 496 +134 523 +135 437 +135 442 +135 539 +136 510 +137 317 +137 439 +138 506 +138 541 +139 413 +139 532 +140 397 +140 424 +140 443 +141 339 +141 353 +141 387 +142 304 +142 337 +142 354 +142 362 +142 420 +142 453 +142 459 +142 463 +142 481 +142 508 +142 552 +142 574 +143 353 +143 526 +143 565 +144 320 +144 356 +144 484 +144 500 +144 510 +144 559 +144 569 +145 305 +145 323 +145 369 +145 427 +145 431 +145 501 +145 542 +145 556 +146 314 +146 412 +146 496 +147 312 +147 315 +147 419 +147 465 +147 513 +148 318 +148 350 +148 475 +148 553 +149 336 +149 388 +149 461 +150 462 +150 474 +150 501 +151 323 +151 331 +151 392 +151 428 +151 501 +152 394 +152 512 +152 546 +153 425 +153 426 +153 477 +154 294 +154 385 +154 487 +154 535 +155 317 +155 393 +155 439 +156 307 +156 384 +156 402 +156 422 +157 419 +157 513 +158 290 +158 297 +158 318 +158 475 +158 490 +158 537 +159 305 +159 361 +159 380 +160 317 +160 407 +160 439 +160 492 +160 570 +161 341 +161 364 +162 302 +162 312 +162 421 +162 425 +162 468 +162 477 +162 513 +163 345 +163 542 +164 421 +164 507 +164 543 +164 564 +165 344 +165 526 +165 547 +165 566 +166 313 +166 390 +166 464 +166 470 +167 312 +167 358 +167 442 +167 468 +167 534 +168 311 +168 323 +168 428 +168 542 +169 324 +169 326 +169 394 +169 538 +170 317 +170 349 +170 393 +170 405 +171 502 +171 507 +171 564 +172 381 +172 426 +172 477 +173 352 +173 455 +174 409 +174 459 +174 574 +175 302 +175 407 +175 421 +175 439 +175 492 +175 533 +175 570 +176 312 +176 365 +176 437 +176 442 +176 567 +177 318 +177 433 +178 551 +179 331 +179 462 +179 501 +180 368 +180 381 +180 531 +181 418 +181 419 +181 421 +181 513 +182 329 +182 347 +182 413 +183 303 +183 416 +184 319 +184 341 +184 497 +185 322 +185 377 +186 338 +186 352 +186 455 +187 339 +187 437 +187 539 +187 567 +188 326 +188 330 +188 448 +189 526 +189 566 +190 320 +191 293 +191 377 +191 500 +191 559 +192 343 +192 420 +192 453 +193 354 +193 362 +193 453 +194 372 +194 469 +194 502 +194 524 +194 529 +195 353 +195 429 +195 467 +195 568 +196 314 +196 333 +196 471 +196 479 +196 496 +196 517 +197 424 +197 440 +197 443 +197 446 +197 454 +197 496 +197 517 +198 338 +198 441 +198 516 +198 536 +199 302 +199 430 +199 439 +200 377 +200 409 +201 309 +201 339 +201 387 +201 495 +201 530 +201 540 +201 572 +202 388 +202 461 +203 336 +203 374 +203 388 +203 461 +204 336 +204 374 +205 300 +205 350 +205 433 +205 475 +205 478 +205 522 +206 313 +206 400 +206 445 +207 406 +207 410 +207 415 +207 456 +207 464 +207 466 +207 521 +208 336 +208 374 +208 461 +209 298 +209 311 +209 372 +210 338 +210 441 +210 516 +210 536 +210 550 +211 292 +211 374 +211 410 +211 464 +211 521 +212 373 +212 445 +212 451 +213 347 +213 397 +213 413 +214 308 +214 340 +214 509 +215 435 +215 551 +216 483 +216 506 +216 541 +217 368 +217 371 +217 531 +218 339 +218 353 +218 366 +218 367 +218 480 +218 499 +218 519 +219 293 +219 310 +219 316 +219 332 +219 351 +219 360 +219 489 +219 510 +219 563 +220 467 +220 544 +221 328 +221 340 +221 348 +221 353 +221 376 +221 509 +221 565 +222 339 +222 357 +222 365 +222 447 +222 567 +223 372 +223 378 +223 416 +223 449 +223 507 +223 549 +224 290 +224 306 +225 345 +225 355 +225 363 +225 502 +225 524 +226 297 +226 491 +226 494 +227 325 +227 367 +227 480 +227 544 +227 562 +228 300 +228 350 +228 433 +228 478 +228 506 +229 344 +229 387 +229 526 +230 460 +230 466 +230 470 +230 476 +230 503 +231 336 +231 374 +232 339 +232 387 +233 317 +233 349 +233 380 +234 352 +234 497 +235 291 +235 331 +235 392 +235 408 +235 431 +235 462 +235 561 +236 440 +236 473 +236 496 +237 327 +237 413 +237 532 +238 367 +238 480 +239 352 +239 497 +240 353 +240 387 +240 526 +241 467 +241 518 +241 545 +241 555 +242 395 +242 545 +242 555 +243 547 +243 554 +243 566 +244 293 +244 510 +245 303 +245 408 +245 561 +246 291 +246 369 +246 423 +246 431 +247 301 +247 336 +247 346 +247 374 +247 410 +247 457 +247 571 +248 293 +248 356 +248 484 +248 510 +248 569 +249 302 +249 439 +250 307 +250 384 +250 402 +250 422 +251 317 +251 533 +251 570 +252 293 +252 356 +252 559 +253 298 +253 372 +254 400 +254 443 +254 486 +255 394 +255 512 +256 429 +256 467 +256 515 +256 528 +256 558 +256 568 +257 292 +257 301 +257 336 +257 346 +257 373 +257 451 +258 301 +258 329 +258 410 +258 451 +258 457 +258 511 +258 571 +259 413 +259 473 +259 523 +260 326 +260 330 +260 334 +260 444 +260 514 +260 515 +260 528 +260 558 +261 296 +261 383 +261 465 +261 488 +261 504 +262 370 +262 381 +262 491 +262 520 +263 322 +263 337 +263 377 +263 409 +263 453 +263 463 +263 574 +264 393 +264 396 +264 405 +264 430 +264 439 +265 372 +265 502 +265 507 +266 329 +266 347 +266 445 +266 451 +266 511 +267 335 +267 389 +267 425 +267 426 +267 480 +267 562 +268 327 +268 400 +268 486 +268 503 +269 373 +269 445 +270 371 +270 381 +270 468 +270 531 +271 308 +271 434 +271 509 +272 292 +272 336 +272 374 +273 308 +273 324 +273 394 +273 434 +273 512 +274 322 +274 377 +274 409 +275 311 +275 345 +275 355 +275 363 +275 469 +275 524 +275 529 +275 542 +276 383 +276 447 +276 504 +276 554 +277 311 +277 542 +278 303 +278 549 +278 561 +279 460 +279 464 +279 466 +279 470 +279 476 +280 295 +280 317 +280 345 +280 361 +280 380 +280 398 +280 414 +280 502 +281 324 +281 328 +281 348 +281 434 +281 509 +281 538 +282 312 +282 315 +282 447 +282 504 +283 409 +283 500 +284 306 +284 381 +284 491 +284 494 +284 548 +285 321 +285 412 +285 413 +285 532 +286 310 +286 360 +287 377 +287 500 +288 434 +288 509 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/instances/15.gr b/src/githubtests/medium_test_set/instances/15.gr new file mode 100644 index 0000000..ade6c7b --- /dev/null +++ b/src/githubtests/medium_test_set/instances/15.gr @@ -0,0 +1,163 @@ +p ocr 54 54 162 +1 56 +2 88 +3 59 +4 58 +5 69 +5 98 +6 62 +6 73 +7 71 +8 83 +9 60 +10 95 +11 75 +12 70 +13 57 +14 76 +15 93 +16 89 +17 58 +17 87 +19 68 +19 105 +20 74 +20 90 +21 103 +22 79 +22 91 +23 78 +24 78 +24 108 +25 55 +25 95 +26 61 +26 65 +26 98 +27 90 +28 62 +29 91 +30 57 +30 72 +31 83 +31 101 +32 56 +32 99 +33 100 +34 92 +35 59 +35 86 +36 85 +36 88 +37 67 +37 92 +38 66 +38 103 +39 107 +40 82 +41 60 +41 77 +42 82 +42 94 +43 75 +43 97 +44 71 +44 96 +45 70 +45 80 +46 100 +46 102 +47 63 +47 89 +48 64 +48 76 +49 84 +49 104 +50 104 +51 68 +52 81 +52 107 +53 69 +54 93 +54 106 +34 55 +37 55 +12 56 +14 57 +53 58 +39 59 +29 60 +18 61 +50 61 +15 62 +6 63 +28 63 +11 64 +43 64 +49 65 +50 65 +20 66 +27 66 +9 67 +41 67 +2 68 +18 69 +23 70 +10 71 +14 72 +48 72 +15 73 +54 73 +16 74 +47 74 +51 75 +11 76 +22 77 +29 77 +40 78 +13 79 +30 79 +23 80 +24 80 +33 81 +46 81 +7 82 +4 83 +3 84 +35 84 +21 85 +38 85 +39 86 +52 86 +5 87 +53 87 +21 88 +28 89 +16 90 +13 91 +9 92 +8 93 +7 94 +44 94 +34 95 +10 96 +25 96 +19 97 +51 97 +18 98 +12 99 +45 99 +1 100 +4 101 +17 101 +1 102 +32 102 +27 103 +3 104 +2 105 +36 105 +8 106 +31 106 +33 107 +40 108 +42 108 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/instances/16.gr b/src/githubtests/medium_test_set/instances/16.gr new file mode 100644 index 0000000..e8989a5 --- /dev/null +++ b/src/githubtests/medium_test_set/instances/16.gr @@ -0,0 +1,259 @@ +p ocr 86 86 258 +1 143 +1 164 +2 135 +2 163 +3 123 +3 153 +4 150 +4 151 +5 146 +5 162 +6 157 +7 138 +7 172 +8 159 +9 145 +9 156 +10 89 +11 163 +12 92 +13 134 +13 158 +14 138 +15 117 +15 149 +16 122 +17 102 +17 103 +18 109 +18 140 +19 151 +20 129 +20 154 +22 111 +22 112 +23 129 +24 110 +24 126 +25 146 +26 131 +26 157 +27 152 +28 98 +28 122 +29 119 +30 156 +31 133 +32 121 +33 121 +33 141 +34 104 +35 102 +36 136 +37 87 +37 125 +38 165 +39 155 +39 169 +40 92 +40 118 +41 91 +41 94 +42 90 +42 113 +43 153 +44 147 +44 152 +45 117 +46 158 +47 113 +48 116 +48 127 +49 88 +49 170 +50 105 +51 95 +51 114 +52 106 +53 115 +53 130 +54 107 +54 124 +55 106 +55 139 +56 112 +57 108 +57 137 +58 168 +59 94 +60 166 +61 170 +62 119 +62 161 +63 99 +63 165 +64 89 +64 128 +65 125 +66 148 +67 93 +67 141 +67 142 +68 107 +69 109 +70 167 +70 168 +71 100 +71 136 +72 95 +73 127 +74 101 +74 159 +75 169 +76 130 +77 148 +77 160 +78 96 +79 143 +80 104 +80 120 +81 133 +81 144 +82 105 +82 171 +83 97 +83 166 +84 126 +85 108 +86 96 +86 132 +18 87 +69 87 +13 88 +46 88 +78 89 +48 90 +73 90 +36 91 +71 91 +45 92 +21 93 +58 93 +36 94 +11 95 +29 96 +1 97 +79 97 +53 98 +76 98 +24 99 +84 99 +39 100 +75 100 +52 101 +55 101 +34 102 +34 103 +80 103 +61 104 +19 105 +25 106 +60 107 +23 108 +35 109 +54 110 +68 110 +6 111 +26 111 +6 112 +73 113 +2 114 +11 114 +9 115 +30 115 +50 116 +82 116 +43 117 +15 118 +45 118 +65 119 +49 120 +61 120 +21 121 +76 122 +10 123 +64 123 +60 124 +83 124 +69 125 +68 126 +50 127 +78 128 +86 128 +31 129 +30 130 +38 131 +63 131 +29 132 +62 132 +72 133 +27 134 +44 134 +66 135 +77 135 +75 136 +20 137 +23 137 +47 138 +5 139 +25 139 +17 140 +35 140 +21 141 +58 142 +70 142 +32 143 +51 144 +72 144 +41 145 +59 145 +16 146 +22 147 +56 147 +14 148 +3 149 +43 149 +8 150 +74 150 +8 151 +56 152 +10 153 +31 154 +81 154 +12 155 +40 155 +59 156 +38 157 +27 158 +52 159 +7 160 +14 160 +37 161 +65 161 +16 162 +28 162 +66 163 +32 164 +33 164 +84 165 +79 166 +57 167 +85 167 +85 168 +12 169 +46 170 +4 171 +19 171 +42 172 +47 172 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/instances/17.gr b/src/githubtests/medium_test_set/instances/17.gr new file mode 100644 index 0000000..fffa421 --- /dev/null +++ b/src/githubtests/medium_test_set/instances/17.gr @@ -0,0 +1,343 @@ +p ocr 114 114 342 +1 190 +2 154 +2 167 +3 193 +4 224 +5 212 +6 128 +7 171 +8 133 +8 201 +9 177 +10 183 +11 129 +11 163 +12 201 +13 156 +13 206 +14 122 +14 208 +15 139 +15 177 +16 176 +17 165 +17 173 +18 203 +20 160 +20 223 +21 162 +21 170 +22 147 +22 183 +23 211 +23 221 +24 128 +24 138 +25 187 +25 189 +26 175 +26 202 +27 222 +28 132 +28 185 +29 140 +30 159 +30 188 +31 191 +32 185 +33 172 +33 176 +34 168 +34 186 +35 227 +36 118 +37 156 +38 164 +38 225 +39 208 +40 155 +41 187 +42 125 +43 174 +43 198 +44 115 +44 116 +44 145 +45 228 +46 144 +46 181 +47 121 +47 178 +48 119 +49 140 +49 184 +50 143 +51 124 +51 126 +52 159 +53 181 +54 121 +55 131 +55 196 +56 143 +56 218 +57 186 +58 213 +59 194 +59 222 +60 149 +60 158 +61 134 +61 195 +62 142 +62 193 +63 135 +63 146 +64 167 +65 161 +66 141 +66 151 +67 157 +68 124 +69 162 +70 161 +70 197 +71 120 +72 151 +73 204 +73 224 +74 118 +74 207 +75 150 +75 157 +76 165 +77 199 +77 205 +78 209 +79 180 +80 117 +80 190 +81 152 +81 192 +82 225 +83 146 +84 169 +84 214 +85 119 +85 130 +86 127 +87 153 +87 213 +88 129 +89 175 +90 210 +91 220 +91 228 +92 196 +93 182 +93 210 +94 180 +94 215 +95 127 +95 148 +96 171 +96 226 +97 174 +98 120 +98 217 +99 212 +99 216 +100 191 +100 200 +101 205 +102 166 +103 125 +103 219 +104 221 +105 134 +106 192 +107 136 +107 209 +108 214 +109 160 +110 137 +110 227 +111 149 +112 116 +112 155 +113 123 +113 203 +114 166 +114 179 +19 115 +101 115 +19 116 +36 117 +74 117 +35 118 +83 119 +39 120 +68 121 +47 122 +54 122 +102 123 +114 123 +3 124 +27 125 +3 126 +62 126 +40 127 +67 128 +104 129 +63 130 +83 130 +5 131 +99 131 +20 132 +109 132 +18 133 +113 133 +16 134 +46 135 +53 135 +29 136 +49 136 +58 137 +87 137 +67 138 +75 138 +50 139 +56 139 +32 140 +25 141 +41 141 +9 142 +15 142 +31 143 +7 144 +96 144 +77 145 +101 145 +53 146 +21 147 +69 147 +40 148 +112 148 +86 149 +55 150 +92 150 +41 151 +42 152 +103 152 +71 153 +98 153 +45 154 +91 154 +19 155 +97 156 +92 157 +86 158 +95 158 +111 159 +88 160 +108 161 +6 162 +23 163 +104 163 +66 164 +72 164 +4 165 +78 166 +45 167 +13 168 +37 168 +1 169 +80 169 +6 170 +24 170 +89 171 +17 172 +76 172 +4 173 +73 173 +105 174 +90 175 +76 176 +50 177 +51 178 +68 178 +78 179 +107 179 +65 180 +7 181 +38 182 +82 182 +69 183 +28 184 +32 184 +109 185 +37 186 +79 187 +60 188 +111 188 +79 189 +94 189 +36 190 +10 191 +42 192 +9 193 +30 194 +52 194 +16 195 +33 195 +5 196 +84 197 +108 197 +61 198 +105 198 +34 199 +57 199 +10 200 +22 200 +18 201 +90 202 +93 202 +102 203 +48 204 +85 204 +57 205 +43 206 +97 206 +35 207 +110 207 +54 208 +29 209 +82 210 +81 211 +106 211 +64 212 +71 213 +1 214 +65 215 +70 215 +2 216 +64 216 +14 217 +39 217 +31 218 +100 218 +27 219 +59 219 +8 220 +12 220 +106 221 +52 222 +11 223 +88 223 +48 224 +72 225 +26 226 +89 226 +58 227 +12 228 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/instances/18.gr b/src/githubtests/medium_test_set/instances/18.gr new file mode 100644 index 0000000..f33a937 --- /dev/null +++ b/src/githubtests/medium_test_set/instances/18.gr @@ -0,0 +1,402 @@ +p ocr 143 123 401 +1 144 +1 145 +1 146 +1 151 +1 161 +1 162 +1 168 +1 174 +1 178 +1 179 +1 185 +2 144 +2 145 +2 147 +2 148 +2 150 +2 152 +2 158 +2 170 +2 171 +2 173 +2 174 +3 144 +3 148 +3 154 +3 171 +3 175 +4 144 +4 146 +4 147 +4 149 +4 153 +4 155 +4 163 +4 174 +4 179 +4 181 +5 144 +5 154 +5 171 +6 144 +7 144 +7 147 +7 159 +8 144 +8 146 +8 151 +8 156 +8 157 +8 160 +8 162 +8 164 +8 172 +8 177 +8 184 +10 144 +10 147 +10 153 +10 165 +10 167 +11 154 +12 154 +13 144 +13 146 +13 155 +14 144 +14 145 +14 161 +14 178 +14 185 +15 144 +15 148 +16 144 +16 150 +17 146 +17 151 +17 184 +18 144 +18 145 +19 144 +19 145 +20 144 +20 148 +20 152 +21 154 +22 144 +22 148 +23 147 +23 159 +23 166 +24 144 +25 151 +25 156 +25 164 +26 144 +26 149 +27 148 +27 152 +28 146 +28 184 +29 144 +30 151 +30 156 +30 160 +31 144 +31 148 +31 175 +32 161 +33 152 +34 144 +35 174 +36 154 +37 178 +37 185 +38 144 +39 145 +40 144 +40 145 +41 144 +42 144 +42 161 +44 144 +44 149 +45 151 +45 177 +46 154 +47 144 +47 147 +48 144 +48 147 +48 185 +48 189 +48 190 +48 195 +48 200 +48 205 +48 206 +48 207 +48 208 +49 185 +49 188 +49 191 +49 195 +49 197 +49 198 +49 200 +50 185 +50 186 +50 187 +50 188 +50 191 +50 192 +50 193 +50 196 +50 197 +50 199 +50 200 +50 201 +50 202 +50 203 +50 208 +51 185 +51 186 +51 187 +51 189 +51 204 +52 185 +52 199 +54 186 +55 185 +55 191 +55 209 +57 185 +57 189 +57 194 +58 189 +58 194 +59 187 +59 204 +60 188 +61 185 +61 190 +62 185 +62 189 +62 190 +63 185 +63 190 +64 185 +64 206 +65 200 +66 185 +66 209 +67 185 +67 188 +69 185 +69 199 +70 201 +70 203 +71 201 +72 185 +73 185 +73 186 +74 185 +74 188 +75 185 +75 209 +76 185 +76 209 +78 185 +79 185 +80 185 +80 208 +81 201 +82 186 +83 195 +83 198 +84 206 +85 187 +86 185 +86 206 +87 185 +87 189 +88 185 +88 189 +88 209 +88 210 +88 211 +88 213 +88 214 +88 215 +88 218 +89 209 +89 210 +89 211 +89 212 +89 213 +89 214 +89 216 +90 209 +90 210 +91 209 +91 211 +92 209 +92 211 +92 218 +93 209 +93 212 +94 210 +94 216 +94 217 +95 211 +96 209 +96 212 +97 210 +97 216 +98 211 +98 214 +99 210 +99 216 +100 211 +100 214 +100 218 +100 219 +100 220 +100 221 +100 222 +100 225 +100 227 +100 228 +100 229 +100 232 +100 234 +100 236 +100 239 +100 243 +100 246 +100 247 +100 248 +100 251 +100 252 +100 253 +100 255 +100 256 +100 257 +100 260 +100 264 +101 218 +101 219 +101 220 +101 222 +101 223 +101 225 +101 232 +101 233 +101 246 +101 259 +101 263 +102 218 +102 222 +102 239 +102 243 +102 247 +102 255 +102 257 +102 258 +102 264 +103 219 +103 221 +104 219 +104 221 +105 218 +105 220 +105 226 +105 227 +105 228 +105 234 +105 235 +105 245 +105 252 +105 254 +105 261 +106 219 +107 222 +107 223 +107 233 +108 222 +108 236 +108 251 +108 253 +109 219 +109 221 +111 218 +111 219 +111 224 +112 218 +112 220 +112 231 +112 237 +112 249 +112 250 +113 218 +113 237 +114 222 +114 239 +114 247 +115 218 +115 227 +115 235 +116 218 +116 220 +116 249 +116 250 +116 262 +117 219 +117 221 +117 230 +117 238 +118 222 +119 219 +119 224 +119 242 +120 218 +120 227 +121 222 +122 218 +122 227 +122 244 +123 219 +123 221 +124 223 +124 233 +125 218 +125 219 +125 224 +126 222 +127 218 +127 219 +128 222 +129 219 +129 259 +130 239 +131 218 +131 221 +131 224 +132 232 +132 246 +133 218 +133 249 +134 252 +135 222 +135 236 +136 218 +138 218 +138 220 +138 265 +139 222 +139 236 +140 219 +141 219 +143 236 +143 251 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/instances/19.gr b/src/githubtests/medium_test_set/instances/19.gr new file mode 100644 index 0000000..e7efa9c --- /dev/null +++ b/src/githubtests/medium_test_set/instances/19.gr @@ -0,0 +1,451 @@ +p ocr 145 139 450 +1 146 +1 147 +1 148 +1 157 +1 158 +1 159 +1 160 +1 161 +1 162 +1 166 +1 182 +1 183 +1 184 +1 195 +2 146 +2 147 +2 149 +2 150 +2 152 +2 153 +2 154 +2 155 +2 163 +2 165 +2 166 +2 179 +2 180 +2 181 +2 185 +2 192 +2 193 +2 194 +3 146 +3 148 +3 149 +3 151 +3 157 +3 160 +3 162 +3 164 +3 168 +3 171 +3 177 +3 181 +3 187 +3 191 +4 147 +4 148 +4 161 +4 166 +4 172 +4 175 +4 182 +4 190 +4 195 +5 146 +5 152 +5 153 +5 154 +5 163 +5 165 +5 170 +5 189 +5 191 +5 192 +6 146 +6 150 +6 167 +6 186 +6 189 +7 146 +7 150 +7 167 +7 180 +8 146 +9 189 +10 147 +10 169 +10 174 +10 178 +10 188 +12 147 +12 158 +12 169 +12 178 +13 157 +13 160 +13 184 +13 187 +14 149 +15 152 +15 165 +16 146 +16 149 +16 151 +16 156 +17 146 +17 191 +18 146 +18 151 +19 148 +19 168 +19 171 +19 177 +19 190 +20 152 +20 155 +20 193 +21 185 +22 152 +22 154 +22 192 +23 148 +23 168 +24 149 +25 147 +25 188 +27 147 +27 172 +27 195 +29 146 +29 164 +31 150 +32 148 +33 147 +33 159 +33 173 +33 183 +34 148 +35 185 +38 160 +40 147 +40 174 +41 155 +41 179 +42 184 +43 195 +43 196 +43 197 +43 199 +43 201 +43 202 +43 204 +43 206 +44 195 +44 196 +44 201 +44 206 +44 209 +45 195 +45 197 +46 196 +46 198 +46 199 +46 203 +46 204 +46 206 +46 207 +46 210 +47 195 +48 196 +48 203 +48 209 +49 196 +50 195 +50 197 +50 200 +51 196 +51 198 +51 199 +51 207 +51 208 +51 210 +52 201 +52 204 +53 198 +53 202 +53 205 +53 207 +53 208 +55 202 +55 205 +55 208 +56 196 +57 202 +57 205 +58 206 +59 195 +60 198 +61 207 +61 210 +61 211 +62 210 +62 211 +62 213 +62 214 +62 215 +62 216 +62 217 +62 233 +62 234 +62 236 +63 210 +63 211 +63 212 +63 213 +63 214 +63 216 +63 217 +63 230 +63 236 +63 239 +64 211 +64 212 +64 230 +64 239 +64 244 +65 213 +65 214 +65 215 +65 218 +65 219 +65 220 +65 223 +65 224 +65 225 +65 226 +65 227 +65 229 +65 232 +65 237 +65 240 +66 213 +66 215 +67 213 +67 214 +67 218 +67 219 +67 220 +67 224 +67 229 +67 232 +67 235 +67 237 +67 240 +67 242 +68 213 +68 219 +69 213 +69 214 +69 223 +69 225 +70 213 +70 219 +71 213 +72 213 +73 211 +73 212 +73 241 +74 219 +75 213 +76 211 +76 244 +77 213 +77 215 +78 220 +78 224 +79 213 +79 215 +79 221 +80 214 +80 215 +80 221 +81 214 +81 215 +81 233 +82 214 +82 235 +83 213 +83 219 +83 231 +83 238 +84 230 +85 213 +85 214 +85 221 +87 213 +87 214 +87 215 +88 213 +88 219 +89 211 +90 213 +90 215 +92 215 +92 234 +93 213 +94 223 +94 225 +95 214 +95 233 +96 219 +97 240 +98 212 +99 223 +99 225 +100 214 +101 220 +101 229 +102 213 +102 219 +103 211 +103 212 +103 244 +103 246 +103 250 +104 244 +104 245 +104 246 +104 248 +104 250 +104 255 +104 256 +104 260 +104 261 +104 262 +105 244 +105 245 +105 247 +105 249 +105 251 +105 253 +105 256 +105 257 +105 258 +105 259 +105 263 +106 244 +106 245 +106 247 +106 253 +106 257 +106 259 +106 263 +107 244 +108 244 +108 246 +108 255 +109 250 +109 260 +110 244 +110 256 +110 262 +111 244 +111 252 +111 254 +112 250 +113 244 +113 256 +114 244 +114 245 +114 252 +115 244 +116 246 +116 261 +117 259 +117 263 +118 252 +118 254 +119 246 +119 255 +121 246 +122 256 +123 250 +124 262 +125 245 +126 250 +126 260 +127 245 +127 252 +127 254 +128 250 +129 250 +130 262 +131 244 +131 245 +131 263 +131 264 +131 266 +131 267 +131 269 +131 270 +131 271 +131 274 +131 275 +131 276 +131 281 +131 284 +132 263 +132 264 +132 265 +132 266 +132 267 +132 270 +132 272 +132 273 +132 274 +132 276 +132 277 +132 278 +132 279 +132 280 +133 263 +133 265 +133 277 +134 264 +134 266 +134 268 +134 269 +134 272 +134 278 +134 281 +134 282 +134 284 +135 263 +135 264 +135 273 +135 279 +136 263 +136 264 +137 271 +137 277 +137 280 +137 283 +138 263 +138 264 +139 266 +139 281 +140 271 +140 280 +140 283 +141 264 +141 268 +141 275 +141 284 +142 263 +142 264 +143 271 +144 270 +144 276 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/instances/2.gr b/src/githubtests/medium_test_set/instances/2.gr new file mode 100644 index 0000000..eb21e1b --- /dev/null +++ b/src/githubtests/medium_test_set/instances/2.gr @@ -0,0 +1,678 @@ +p ocr 351 327 677 +1 379 +1 655 +2 379 +3 379 +4 379 +5 379 +6 379 +7 379 +8 379 +9 379 +10 379 +11 379 +12 379 +13 379 +14 379 +15 379 +16 379 +17 379 +18 379 +19 379 +20 379 +21 379 +22 379 +23 379 +24 379 +25 379 +26 379 +27 379 +28 379 +29 379 +30 379 +31 379 +32 379 +33 379 +34 379 +35 379 +36 379 +37 379 +38 379 +39 379 +40 379 +41 379 +42 379 +43 379 +44 379 +45 379 +46 379 +47 379 +48 379 +49 379 +50 379 +51 379 +52 379 +53 379 +54 379 +55 379 +56 379 +57 379 +58 379 +59 379 +60 379 +61 379 +62 379 +63 379 +64 379 +65 379 +66 379 +67 379 +68 379 +69 379 +70 379 +71 379 +72 379 +73 379 +74 379 +75 379 +76 379 +77 379 +78 379 +79 379 +80 379 +81 379 +82 379 +83 379 +84 379 +85 379 +86 379 +87 379 +88 379 +89 379 +90 379 +91 379 +92 379 +93 379 +94 379 +95 379 +96 379 +97 379 +98 379 +99 379 +100 379 +101 379 +102 379 +103 379 +104 379 +105 379 +106 379 +107 379 +108 379 +109 379 +110 379 +111 379 +112 379 +113 379 +114 379 +115 379 +116 379 +117 379 +118 379 +119 379 +120 379 +121 379 +122 379 +123 379 +124 379 +125 379 +126 379 +127 379 +128 379 +129 379 +130 379 +131 379 +132 379 +133 379 +134 379 +135 379 +136 379 +137 379 +138 379 +139 379 +140 379 +141 379 +142 379 +143 379 +144 379 +145 379 +146 379 +147 379 +148 379 +149 379 +150 379 +151 379 +152 379 +153 379 +154 379 +155 379 +156 379 +157 379 +158 379 +159 379 +160 379 +161 379 +162 379 +163 379 +164 379 +165 379 +166 379 +167 379 +168 379 +169 379 +170 379 +171 379 +172 379 +173 379 +174 379 +175 379 +176 379 +177 379 +178 379 +179 379 +180 379 +181 379 +182 379 +183 379 +184 379 +185 379 +186 379 +187 379 +188 379 +189 379 +190 379 +191 379 +192 379 +193 379 +194 379 +195 379 +196 379 +197 379 +198 379 +199 379 +200 379 +201 379 +202 379 +203 379 +204 379 +205 379 +206 379 +207 379 +208 379 +209 379 +210 379 +211 379 +212 379 +213 379 +214 379 +215 379 +216 379 +217 379 +218 379 +219 379 +220 379 +221 379 +222 379 +223 379 +224 379 +225 379 +226 379 +227 379 +228 379 +229 379 +230 379 +231 379 +232 379 +233 379 +234 379 +235 379 +236 379 +237 379 +238 379 +239 379 +240 379 +241 379 +242 379 +243 379 +244 379 +245 379 +246 379 +247 379 +248 379 +249 379 +250 379 +251 379 +252 379 +253 379 +254 379 +255 379 +256 379 +257 379 +258 379 +259 379 +260 379 +261 379 +262 379 +263 379 +264 379 +265 379 +266 379 +267 379 +268 379 +269 379 +270 379 +271 379 +272 379 +273 379 +274 379 +275 379 +276 379 +277 379 +278 379 +279 379 +280 379 +281 379 +282 379 +283 379 +284 379 +285 379 +286 379 +287 379 +288 379 +289 379 +290 379 +291 379 +292 379 +293 379 +294 379 +295 379 +296 379 +297 379 +298 379 +299 379 +300 379 +301 379 +302 379 +303 379 +304 379 +305 379 +306 379 +307 379 +308 379 +309 379 +310 379 +311 379 +312 379 +313 379 +314 379 +315 379 +316 379 +317 379 +318 379 +319 379 +320 379 +321 379 +322 379 +323 379 +324 379 +325 379 +326 352 +326 353 +326 354 +326 355 +326 356 +326 357 +326 358 +326 359 +326 360 +326 361 +326 362 +326 363 +326 364 +326 365 +326 366 +326 367 +326 368 +326 369 +326 370 +326 371 +326 372 +326 373 +326 374 +326 375 +326 376 +326 377 +326 378 +326 379 +326 380 +326 381 +326 382 +326 383 +326 384 +326 385 +326 386 +326 387 +326 388 +326 389 +326 390 +326 391 +326 392 +326 393 +326 394 +326 395 +326 396 +326 397 +326 398 +326 399 +326 400 +326 401 +326 402 +326 403 +326 404 +326 405 +326 406 +326 407 +326 408 +326 409 +326 410 +326 411 +326 412 +326 413 +326 414 +326 415 +326 416 +326 417 +326 418 +326 419 +326 420 +326 421 +326 422 +326 423 +326 424 +326 425 +326 426 +326 427 +326 428 +326 429 +326 430 +326 431 +326 432 +326 433 +326 434 +326 435 +326 436 +326 437 +326 438 +326 439 +326 440 +326 441 +326 442 +326 443 +326 444 +326 445 +326 446 +326 447 +326 448 +326 449 +326 450 +326 451 +326 452 +326 453 +326 454 +326 455 +326 456 +326 457 +326 458 +326 459 +326 460 +326 461 +326 462 +326 463 +326 464 +326 465 +326 466 +326 467 +326 468 +326 469 +326 470 +326 471 +326 472 +326 473 +326 474 +326 475 +326 476 +326 477 +326 478 +326 479 +326 480 +326 481 +326 482 +326 483 +326 484 +326 485 +326 486 +326 487 +326 488 +326 489 +326 490 +326 491 +326 492 +326 493 +326 494 +326 495 +326 496 +326 497 +326 498 +326 499 +326 500 +326 501 +326 502 +326 503 +326 504 +326 505 +326 506 +326 507 +326 508 +326 509 +326 510 +326 511 +326 512 +326 513 +326 514 +326 515 +326 516 +326 517 +326 518 +326 519 +326 520 +326 521 +326 522 +326 523 +326 524 +326 525 +326 526 +326 527 +326 528 +326 529 +326 530 +326 531 +326 532 +326 533 +326 534 +326 535 +326 536 +326 537 +326 538 +326 539 +326 540 +326 541 +326 542 +326 543 +326 544 +326 545 +326 546 +326 547 +326 548 +326 549 +326 550 +326 551 +326 552 +326 553 +326 554 +326 555 +326 556 +326 557 +326 558 +326 559 +326 560 +326 561 +326 562 +326 563 +326 564 +326 565 +326 566 +326 567 +326 568 +326 569 +326 570 +326 571 +326 572 +326 573 +326 574 +326 575 +326 576 +326 577 +326 578 +326 579 +326 580 +326 581 +326 582 +326 583 +326 584 +326 585 +326 586 +326 587 +326 588 +326 589 +326 590 +326 591 +326 592 +326 593 +326 594 +326 595 +326 596 +326 597 +326 598 +326 599 +326 600 +326 601 +326 602 +326 603 +326 604 +326 605 +326 606 +326 607 +326 608 +326 609 +326 610 +326 611 +326 612 +326 613 +326 614 +326 615 +326 616 +326 617 +326 618 +326 619 +326 620 +326 621 +326 622 +326 623 +326 624 +326 625 +326 626 +326 627 +326 628 +326 629 +326 630 +326 631 +326 632 +326 633 +326 634 +326 635 +326 636 +326 637 +326 638 +326 639 +326 640 +326 641 +326 642 +326 643 +326 644 +326 645 +326 646 +326 647 +326 648 +326 649 +326 650 +326 651 +326 652 +326 653 +326 654 +326 656 +326 657 +326 658 +326 659 +326 660 +326 661 +326 662 +326 663 +326 664 +326 665 +326 666 +326 667 +326 668 +326 669 +326 670 +326 671 +326 672 +326 673 +326 674 +326 675 +326 676 +326 677 +326 678 +327 655 +328 655 +329 655 +330 655 +331 655 +332 655 +333 655 +334 655 +335 655 +336 655 +337 655 +338 655 +339 655 +340 655 +341 655 +342 655 +343 655 +344 655 +345 655 +346 655 +347 655 +348 655 +349 655 +350 655 +351 655 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/instances/20.gr b/src/githubtests/medium_test_set/instances/20.gr new file mode 100644 index 0000000..9997cbb --- /dev/null +++ b/src/githubtests/medium_test_set/instances/20.gr @@ -0,0 +1,568 @@ +p ocr 200 181 567 +1 201 +1 202 +1 204 +1 208 +2 201 +3 201 +3 202 +3 203 +3 205 +3 206 +3 207 +3 209 +3 210 +5 204 +6 204 +6 208 +7 202 +7 203 +7 205 +7 206 +7 210 +8 201 +8 203 +10 203 +10 207 +12 205 +13 203 +13 209 +14 204 +14 208 +14 210 +14 211 +14 212 +14 213 +14 220 +14 222 +15 210 +15 211 +15 212 +15 213 +15 215 +15 218 +15 219 +15 220 +15 222 +15 227 +16 210 +16 214 +16 215 +16 224 +16 229 +17 210 +17 227 +18 210 +18 213 +18 216 +18 223 +18 226 +19 211 +19 216 +19 222 +19 226 +20 210 +20 214 +20 215 +20 217 +20 228 +20 229 +21 214 +21 217 +21 218 +21 219 +22 211 +22 212 +23 216 +23 223 +24 210 +24 224 +25 210 +26 211 +27 214 +27 225 +28 210 +29 218 +30 214 +30 217 +30 221 +32 211 +32 220 +33 214 +33 225 +33 228 +34 214 +36 216 +37 211 +37 212 +38 214 +40 215 +41 210 +42 212 +43 211 +43 229 +43 230 +43 232 +43 234 +43 235 +43 237 +43 238 +43 242 +43 243 +43 251 +43 252 +43 253 +43 255 +43 257 +43 262 +43 263 +43 268 +43 271 +43 272 +44 229 +44 230 +44 231 +44 232 +44 233 +44 234 +44 235 +44 236 +44 240 +44 242 +44 253 +44 263 +44 266 +45 229 +45 230 +45 233 +45 244 +45 245 +45 246 +45 247 +45 249 +45 264 +45 265 +45 269 +46 229 +46 240 +47 229 +47 236 +47 260 +47 270 +48 229 +48 230 +48 238 +48 243 +48 248 +48 256 +49 229 +49 236 +49 260 +50 229 +50 237 +50 238 +50 248 +51 229 +51 230 +51 231 +51 239 +51 259 +52 232 +52 257 +53 230 +53 246 +53 249 +53 264 +54 230 +54 234 +55 229 +56 230 +56 268 +56 272 +57 229 +57 231 +57 239 +57 250 +57 258 +57 273 +58 229 +58 231 +59 229 +59 244 +60 236 +61 229 +61 230 +61 245 +61 265 +61 267 +62 232 +62 251 +62 255 +62 262 +62 266 +63 229 +63 231 +63 250 +63 258 +64 231 +65 229 +65 230 +65 231 +65 241 +65 254 +66 230 +66 243 +67 238 +67 248 +67 256 +69 238 +70 239 +71 230 +72 229 +73 230 +74 232 +75 232 +75 251 +76 242 +76 252 +77 230 +78 229 +78 231 +78 241 +78 273 +78 280 +78 282 +78 286 +78 287 +78 288 +78 290 +78 299 +78 303 +78 308 +78 309 +78 311 +79 273 +79 275 +79 278 +79 279 +79 280 +79 283 +79 292 +79 296 +79 302 +79 310 +80 273 +80 275 +80 294 +81 273 +81 274 +81 276 +81 277 +81 281 +81 285 +81 291 +81 294 +81 295 +81 298 +81 304 +81 306 +82 275 +82 302 +82 310 +83 273 +83 274 +83 276 +83 277 +83 278 +83 279 +83 283 +83 284 +83 289 +83 293 +83 301 +83 304 +84 273 +84 294 +85 273 +85 279 +85 292 +86 273 +86 282 +86 286 +86 290 +86 309 +87 276 +87 277 +87 289 +87 291 +87 306 +87 307 +88 277 +89 282 +89 288 +90 274 +90 276 +90 281 +90 285 +90 297 +90 298 +91 277 +91 307 +92 277 +93 281 +94 275 +94 296 +94 302 +95 281 +96 273 +97 288 +98 277 +98 291 +99 273 +99 286 +100 273 +100 278 +100 300 +101 279 +102 273 +103 273 +104 273 +104 299 +104 303 +105 273 +105 280 +106 279 +107 292 +109 276 +109 298 +110 302 +111 276 +111 298 +112 273 +113 281 +114 273 +114 292 +115 273 +116 278 +116 300 +117 285 +117 297 +117 305 +118 282 +118 288 +119 277 +120 288 +120 308 +120 311 +120 312 +120 313 +120 314 +120 315 +120 317 +120 318 +120 319 +120 320 +120 321 +120 324 +120 325 +120 326 +120 329 +120 331 +120 333 +120 335 +120 337 +120 338 +120 341 +120 348 +120 349 +120 351 +120 353 +120 356 +120 357 +120 359 +121 311 +121 312 +121 314 +121 315 +121 316 +121 321 +121 323 +121 325 +121 326 +121 330 +121 332 +121 337 +121 342 +121 349 +121 352 +122 311 +122 322 +122 350 +123 316 +123 317 +123 322 +123 327 +123 329 +123 331 +123 332 +123 335 +123 336 +123 346 +123 347 +123 349 +123 353 +123 357 +124 317 +124 321 +124 329 +124 346 +124 347 +124 356 +124 357 +125 312 +125 313 +125 315 +125 325 +125 334 +125 339 +125 342 +126 316 +126 328 +126 343 +126 345 +126 350 +128 335 +128 338 +128 348 +128 358 +129 356 +129 359 +130 317 +130 318 +130 324 +130 341 +130 351 +131 317 +132 345 +132 350 +133 322 +134 316 +134 327 +134 328 +134 343 +134 355 +135 345 +138 317 +138 324 +138 351 +139 316 +139 332 +141 315 +142 312 +142 323 +143 323 +144 316 +144 328 +144 343 +145 338 +154 359 +154 360 +154 363 +154 364 +154 372 +155 359 +155 360 +155 361 +155 363 +155 364 +155 366 +155 369 +155 373 +155 376 +155 377 +155 379 +155 381 +156 359 +156 361 +156 362 +156 365 +156 367 +156 370 +156 378 +157 360 +157 361 +157 362 +157 366 +157 368 +157 371 +157 374 +157 378 +157 380 +158 363 +158 372 +158 373 +159 360 +159 366 +159 368 +159 369 +159 379 +159 380 +160 361 +160 362 +160 365 +160 367 +160 370 +160 375 +161 361 +162 372 +163 361 +163 362 +164 364 +165 361 +165 371 +165 378 +166 360 +166 374 +167 366 +168 361 +168 362 +169 361 +169 376 +170 361 +170 367 +170 375 +171 360 +172 361 +173 369 +173 379 +173 381 +174 361 +175 370 +176 366 +176 377 +177 364 +178 361 +178 362 +179 361 +180 366 +180 369 +181 362 +182 370 +184 363 +185 360 +185 374 +186 369 +186 381 +188 361 +188 375 +189 370 +190 362 +191 379 +192 367 +193 362 +193 365 +194 370 +195 365 +197 365 +199 364 +200 379 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/instances/21.gr b/src/githubtests/medium_test_set/instances/21.gr new file mode 100644 index 0000000..cb569ac --- /dev/null +++ b/src/githubtests/medium_test_set/instances/21.gr @@ -0,0 +1,199 @@ +p ocr 89 101 198 +1 90 +1 91 +1 100 +1 118 +1 127 +2 90 +2 91 +2 93 +2 106 +2 115 +2 120 +2 123 +2 124 +3 91 +3 96 +3 113 +4 90 +4 91 +5 90 +6 91 +7 94 +7 97 +7 104 +8 91 +9 90 +9 101 +9 102 +10 90 +10 91 +10 128 +11 94 +11 104 +12 123 +13 90 +14 91 +15 90 +15 94 +16 90 +17 90 +17 112 +19 93 +19 106 +20 90 +20 94 +20 111 +20 122 +21 91 +21 95 +22 100 +22 119 +23 90 +23 105 +23 110 +23 126 +24 91 +24 97 +25 90 +25 117 +26 91 +26 97 +27 91 +27 109 +28 90 +29 94 +29 95 +30 90 +30 94 +31 91 +31 109 +32 97 +33 110 +33 126 +34 117 +35 94 +35 98 +35 129 +35 130 +36 129 +36 130 +36 131 +36 132 +36 133 +36 135 +36 140 +36 144 +36 145 +36 153 +37 149 +38 135 +38 140 +40 132 +40 137 +40 139 +40 147 +40 149 +40 153 +41 130 +41 134 +41 142 +41 148 +41 151 +41 152 +42 134 +43 130 +44 130 +44 133 +46 130 +46 136 +47 130 +48 130 +49 131 +49 144 +52 153 +52 154 +52 155 +52 156 +52 161 +52 166 +52 174 +52 176 +52 180 +52 182 +53 153 +53 157 +53 162 +53 168 +53 172 +53 177 +53 179 +53 183 +53 185 +54 155 +54 161 +54 175 +54 176 +55 155 +56 153 +56 159 +56 162 +56 169 +56 173 +56 179 +56 187 +56 189 +57 154 +57 156 +58 154 +58 158 +58 164 +58 171 +59 156 +59 166 +59 167 +59 170 +59 184 +59 188 +62 153 +62 159 +62 178 +63 156 +63 167 +64 172 +64 174 +64 177 +64 181 +65 159 +65 169 +65 187 +66 162 +67 162 +68 153 +68 157 +69 176 +69 186 +70 154 +70 171 +71 156 +72 162 +73 174 +74 159 +75 172 +76 159 +77 174 +78 153 +79 188 +80 157 +81 153 +81 183 +82 156 +84 158 +85 176 +85 186 +86 153 +87 162 +87 173 +88 153 +88 180 +89 159 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/instances/22.gr b/src/githubtests/medium_test_set/instances/22.gr new file mode 100644 index 0000000..b3b418f --- /dev/null +++ b/src/githubtests/medium_test_set/instances/22.gr @@ -0,0 +1,197 @@ +p ocr 95 123 196 +1 96 +1 100 +1 101 +1 103 +2 96 +2 98 +2 99 +2 102 +3 96 +3 97 +4 96 +5 98 +6 99 +6 101 +7 96 +8 100 +8 102 +10 96 +10 97 +12 97 +16 98 +17 102 +18 104 +20 99 +22 104 +23 102 +24 96 +25 98 +29 97 +32 96 +33 99 +34 98 +40 97 +41 104 +42 96 +43 98 +43 104 +43 105 +43 106 +43 107 +43 109 +43 110 +43 112 +43 117 +43 118 +43 122 +43 123 +43 132 +43 135 +43 137 +43 138 +44 105 +44 106 +44 108 +44 117 +44 140 +45 107 +45 109 +45 116 +45 131 +46 104 +46 105 +46 113 +46 115 +46 120 +46 125 +46 143 +47 104 +47 113 +47 120 +47 125 +47 128 +47 134 +47 143 +48 107 +48 111 +48 121 +49 112 +49 137 +50 109 +51 105 +52 105 +52 124 +53 106 +53 107 +54 104 +54 110 +55 113 +56 109 +56 119 +59 104 +60 110 +61 106 +62 105 +62 114 +63 117 +63 129 +63 133 +63 144 +63 145 +63 146 +63 147 +63 153 +63 162 +63 166 +63 169 +63 174 +63 175 +63 182 +63 183 +64 145 +64 146 +64 161 +64 173 +64 180 +65 145 +65 148 +65 154 +65 169 +66 145 +66 186 +67 144 +67 160 +68 145 +68 146 +68 165 +69 146 +69 159 +69 168 +69 185 +71 151 +71 152 +71 155 +72 144 +72 145 +72 156 +72 158 +72 177 +74 160 +74 166 +74 174 +74 175 +74 182 +75 158 +75 177 +76 145 +76 161 +76 179 +77 145 +77 149 +77 181 +78 161 +79 146 +79 150 +80 150 +81 148 +81 178 +83 145 +83 167 +83 190 +83 191 +83 192 +83 193 +83 204 +83 217 +84 192 +84 194 +84 195 +84 217 +85 191 +85 199 +85 204 +86 194 +86 195 +87 193 +87 208 +87 211 +88 195 +88 205 +89 192 +89 193 +89 200 +89 202 +89 203 +89 207 +89 209 +90 190 +90 191 +91 200 +92 192 +92 193 +93 191 +94 204 +95 190 +95 191 +95 214 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/instances/23.gr b/src/githubtests/medium_test_set/instances/23.gr new file mode 100644 index 0000000..b93dcca --- /dev/null +++ b/src/githubtests/medium_test_set/instances/23.gr @@ -0,0 +1,266 @@ +p ocr 120 163 265 +1 121 +1 122 +1 156 +2 121 +2 122 +2 125 +2 166 +3 122 +3 123 +3 124 +3 129 +3 133 +3 149 +3 150 +3 153 +4 122 +4 126 +4 127 +4 131 +4 132 +4 136 +4 141 +4 145 +4 154 +5 122 +5 128 +6 123 +6 124 +6 129 +6 143 +7 130 +7 139 +7 144 +7 152 +7 166 +8 130 +8 139 +8 144 +8 167 +9 122 +9 126 +9 127 +9 136 +9 138 +9 141 +9 142 +9 146 +9 155 +9 157 +9 159 +9 161 +9 168 +10 126 +10 147 +11 123 +11 151 +12 126 +13 129 +13 148 +13 158 +13 160 +13 162 +13 163 +14 149 +14 163 +15 129 +15 148 +15 160 +15 168 +15 169 +15 170 +15 177 +16 169 +16 172 +16 175 +17 170 +17 171 +17 176 +17 177 +19 168 +20 169 +21 171 +22 172 +24 168 +24 170 +24 180 +24 181 +24 182 +24 183 +24 185 +24 193 +25 181 +25 182 +25 186 +25 192 +26 181 +26 185 +27 183 +27 192 +27 195 +28 186 +28 188 +28 198 +29 181 +29 189 +30 181 +30 184 +30 194 +30 196 +30 197 +30 200 +31 181 +31 190 +31 201 +32 188 +33 188 +34 182 +35 184 +36 183 +37 190 +39 181 +40 180 +40 187 +42 181 +43 183 +45 186 +47 201 +49 184 +49 200 +49 201 +49 202 +49 214 +49 216 +49 219 +49 225 +49 228 +49 236 +50 201 +50 202 +50 203 +50 204 +50 205 +50 207 +50 208 +50 211 +50 215 +50 241 +51 202 +51 206 +51 224 +52 202 +52 205 +52 210 +52 220 +52 242 +52 244 +53 202 +53 205 +54 202 +54 214 +54 228 +55 202 +55 209 +55 233 +56 208 +56 215 +56 238 +56 240 +57 202 +57 209 +57 233 +57 246 +57 248 +57 249 +57 254 +57 258 +58 246 +58 247 +58 250 +58 251 +58 255 +58 256 +58 259 +58 260 +58 261 +59 246 +59 251 +59 257 +59 261 +60 246 +60 253 +61 247 +61 250 +62 249 +63 246 +64 246 +64 248 +65 248 +66 256 +66 260 +68 253 +69 246 +70 249 +72 251 +73 246 +73 248 +74 246 +75 251 +77 261 +78 253 +79 246 +79 248 +80 246 +82 246 +85 249 +86 247 +87 246 +88 246 +89 248 +91 248 +91 252 +92 246 +93 246 +95 246 +96 246 +97 251 +97 255 +100 250 +101 261 +102 248 +104 248 +104 261 +104 264 +104 265 +104 266 +104 267 +104 268 +104 270 +104 273 +104 282 +105 261 +106 261 +106 262 +106 263 +107 261 +108 262 +109 267 +109 269 +110 261 +111 261 +112 264 +112 268 +113 261 +113 279 +114 261 +114 262 +115 264 +115 265 +116 264 +117 265 +117 271 +118 264 +120 261 +120 279 +120 283 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/instances/24.gr b/src/githubtests/medium_test_set/instances/24.gr new file mode 100644 index 0000000..f279f05 --- /dev/null +++ b/src/githubtests/medium_test_set/instances/24.gr @@ -0,0 +1,426 @@ +p ocr 255 261 425 +1 256 +3 257 +4 256 +5 256 +5 257 +6 258 +7 256 +7 258 +7 261 +8 258 +8 259 +8 264 +9 265 +9 266 +9 268 +10 267 +10 268 +10 269 +10 271 +10 272 +10 273 +11 274 +12 273 +12 274 +13 274 +13 277 +14 277 +15 273 +15 275 +15 280 +16 277 +16 281 +16 282 +17 278 +17 281 +17 282 +17 284 +19 283 +20 283 +20 285 +22 283 +22 285 +22 286 +23 284 +23 285 +27 288 +28 291 +29 287 +29 291 +30 290 +30 292 +30 293 +30 294 +31 291 +31 292 +31 293 +31 294 +33 295 +33 297 +34 298 +36 298 +36 299 +37 297 +37 299 +38 296 +38 299 +38 300 +39 297 +41 300 +42 302 +42 304 +42 306 +43 304 +44 306 +44 307 +46 305 +46 307 +47 308 +48 309 +48 311 +50 312 +52 310 +52 314 +53 310 +54 312 +56 314 +57 314 +58 313 +58 315 +60 313 +60 316 +60 318 +61 315 +61 316 +62 315 +62 317 +63 316 +63 321 +64 318 +64 319 +64 321 +65 317 +65 319 +65 323 +65 325 +66 322 +66 326 +67 322 +68 324 +68 325 +68 327 +68 328 +68 330 +69 326 +69 327 +70 327 +70 330 +70 331 +71 330 +71 333 +71 338 +72 337 +73 340 +73 343 +74 338 +74 339 +75 340 +75 341 +76 341 +76 343 +76 345 +78 344 +79 344 +80 348 +81 345 +81 346 +81 347 +82 346 +84 351 +85 350 +85 351 +86 350 +90 351 +90 352 +91 351 +92 351 +93 353 +93 354 +94 352 +94 354 +95 355 +96 353 +97 355 +98 352 +98 354 +99 354 +99 355 +100 353 +101 356 +101 357 +101 358 +103 358 +103 359 +104 356 +104 358 +104 360 +106 357 +106 359 +106 363 +107 362 +107 363 +108 360 +109 361 +110 362 +111 365 +112 366 +113 363 +113 364 +113 365 +114 366 +114 367 +116 367 +117 368 +118 366 +118 369 +119 368 +122 368 +123 368 +123 369 +125 370 +125 372 +127 376 +128 376 +129 373 +129 376 +129 378 +130 379 +132 376 +132 380 +132 383 +133 378 +133 381 +133 383 +134 382 +134 383 +134 386 +134 387 +135 386 +135 387 +136 385 +136 389 +137 386 +137 388 +137 390 +137 392 +137 394 +138 389 +138 392 +139 388 +139 389 +139 391 +139 394 +139 395 +140 396 +141 393 +142 397 +143 398 +144 395 +144 399 +145 396 +145 400 +146 397 +146 399 +146 401 +147 398 +148 400 +148 401 +149 399 +149 403 +150 400 +150 401 +150 404 +151 400 +151 401 +152 402 +152 403 +152 406 +153 403 +153 404 +153 407 +154 407 +157 406 +158 409 +158 410 +159 407 +159 411 +160 406 +160 407 +161 410 +161 413 +162 409 +162 411 +162 415 +163 409 +163 414 +163 416 +164 413 +165 416 +166 414 +166 418 +167 419 +168 416 +168 418 +169 417 +169 422 +170 424 +171 424 +171 425 +172 421 +172 422 +173 424 +173 426 +173 427 +174 427 +174 428 +175 424 +175 427 +176 426 +176 427 +176 429 +177 427 +178 430 +179 429 +179 432 +179 433 +179 434 +180 431 +180 434 +181 431 +181 432 +181 436 +183 434 +183 436 +183 437 +184 434 +184 437 +185 436 +185 439 +186 436 +186 438 +187 437 +187 438 +187 439 +187 443 +187 444 +188 443 +188 445 +188 447 +189 448 +189 449 +189 450 +189 451 +190 448 +190 452 +191 449 +191 450 +191 451 +191 452 +191 453 +194 453 +196 453 +196 454 +197 456 +198 457 +199 458 +200 455 +200 456 +201 454 +201 457 +201 459 +202 456 +203 463 +204 460 +205 458 +205 460 +205 461 +206 460 +206 462 +207 467 +208 464 +208 465 +208 467 +209 468 +210 465 +210 466 +210 469 +211 468 +211 470 +214 468 +215 470 +216 469 +216 470 +216 473 +217 472 +219 471 +219 475 +219 476 +220 472 +220 474 +220 476 +223 474 +223 479 +224 476 +224 478 +226 478 +226 479 +226 480 +226 481 +226 482 +227 482 +227 483 +228 479 +228 480 +228 481 +228 483 +229 484 +230 485 +231 482 +231 485 +231 486 +231 488 +232 482 +232 487 +234 485 +234 491 +235 490 +235 491 +236 488 +236 492 +237 489 +238 489 +239 492 +240 491 +244 494 +244 495 +245 495 +246 493 +246 494 +250 497 +250 498 +251 496 +252 496 +252 497 +252 498 +252 499 +252 500 +253 496 +253 497 +253 499 +253 501 +255 498 +255 500 +255 502 +255 504 +255 506 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/instances/25.gr b/src/githubtests/medium_test_set/instances/25.gr new file mode 100644 index 0000000..0a7a7bf --- /dev/null +++ b/src/githubtests/medium_test_set/instances/25.gr @@ -0,0 +1,612 @@ +p ocr 287 254 611 +1 289 +1 290 +1 292 +1 293 +1 294 +2 290 +2 292 +2 294 +2 295 +2 296 +4 294 +4 295 +4 297 +4 299 +5 296 +5 297 +6 294 +6 295 +6 297 +6 298 +7 298 +7 299 +7 301 +8 297 +8 300 +9 298 +9 300 +9 302 +10 299 +10 300 +10 301 +10 302 +10 303 +11 303 +12 300 +12 302 +12 303 +13 303 +13 304 +13 306 +14 305 +14 307 +15 303 +15 304 +15 306 +15 308 +17 306 +17 307 +17 308 +17 309 +18 307 +18 309 +19 307 +19 308 +19 309 +21 308 +21 309 +23 309 +23 310 +24 309 +24 310 +24 311 +25 309 +26 310 +27 310 +28 310 +28 312 +29 310 +29 311 +30 310 +30 313 +31 310 +31 315 +32 313 +32 316 +33 313 +33 315 +33 317 +33 319 +34 314 +34 316 +34 319 +35 320 +36 316 +36 318 +36 320 +36 322 +37 319 +37 323 +37 324 +38 320 +38 321 +38 323 +38 326 +38 328 +39 326 +39 327 +39 329 +39 330 +39 332 +39 333 +40 330 +40 333 +40 335 +40 336 +40 337 +41 334 +41 337 +42 335 +42 337 +42 338 +43 338 +43 339 +44 335 +44 336 +44 339 +45 337 +45 340 +46 338 +46 339 +48 339 +49 339 +49 340 +49 341 +49 343 +50 339 +50 343 +51 339 +51 341 +51 342 +52 342 +52 343 +52 344 +52 346 +53 342 +53 348 +54 342 +54 343 +54 346 +54 347 +55 344 +55 348 +56 348 +56 350 +57 349 +58 350 +59 347 +59 348 +59 349 +60 349 +60 350 +61 349 +61 351 +62 350 +62 351 +63 349 +63 351 +64 350 +64 352 +66 354 +67 352 +67 353 +67 354 +68 353 +68 355 +68 356 +69 355 +69 358 +70 355 +70 359 +71 354 +71 355 +71 357 +71 359 +72 356 +72 357 +73 359 +73 360 +73 361 +74 359 +74 361 +75 359 +75 360 +75 363 +75 365 +76 359 +76 361 +76 364 +76 366 +77 362 +77 364 +77 366 +79 364 +79 367 +80 365 +80 366 +80 367 +81 367 +81 368 +82 366 +82 367 +82 368 +83 366 +83 368 +83 371 +84 367 +84 371 +85 368 +85 370 +85 371 +85 372 +86 369 +86 372 +86 373 +86 375 +86 376 +87 371 +87 374 +87 377 +88 373 +88 375 +88 379 +90 376 +90 378 +90 379 +90 380 +90 381 +90 382 +90 384 +90 385 +91 379 +91 381 +91 382 +91 384 +91 385 +91 386 +92 390 +92 392 +92 393 +92 394 +93 390 +93 394 +94 389 +94 390 +94 393 +94 395 +95 393 +95 395 +95 396 +96 393 +96 394 +96 395 +96 396 +97 397 +97 398 +97 399 +97 402 +98 396 +98 397 +98 398 +98 400 +98 401 +98 402 +99 399 +99 400 +99 402 +99 404 +99 406 +99 407 +100 401 +100 404 +101 408 +102 405 +102 406 +102 409 +102 410 +103 406 +103 408 +103 409 +104 407 +104 411 +105 409 +105 411 +106 409 +106 410 +106 413 +106 414 +107 409 +107 415 +108 411 +108 415 +108 416 +109 415 +110 415 +111 413 +111 416 +111 417 +112 416 +113 416 +114 418 +114 419 +115 418 +116 418 +117 418 +117 419 +117 420 +117 421 +117 423 +117 424 +118 419 +118 420 +118 422 +118 424 +119 421 +119 423 +119 424 +119 426 +119 427 +119 428 +120 423 +120 426 +120 429 +120 430 +120 431 +121 424 +121 430 +122 428 +122 430 +123 431 +123 432 +124 429 +124 430 +124 432 +124 434 +125 430 +125 432 +125 434 +126 431 +126 433 +126 434 +127 432 +127 434 +127 435 +128 435 +128 436 +128 437 +128 439 +128 440 +128 441 +128 442 +129 439 +129 442 +130 439 +132 440 +132 441 +132 442 +132 443 +132 444 +132 445 +133 444 +134 442 +134 443 +135 443 +135 444 +135 445 +135 446 +135 447 +135 450 +136 443 +136 445 +136 446 +136 449 +136 450 +136 451 +137 448 +137 451 +137 453 +137 455 +138 451 +138 453 +138 454 +138 456 +139 458 +140 456 +141 455 +142 455 +142 459 +142 460 +143 456 +143 462 +143 463 +143 464 +144 461 +144 463 +144 465 +144 467 +144 469 +145 463 +145 465 +145 468 +145 470 +146 467 +146 468 +146 469 +147 468 +147 470 +147 471 +148 470 +149 469 +149 470 +149 471 +150 471 +150 472 +151 469 +151 471 +151 472 +152 471 +152 472 +154 471 +154 473 +154 474 +155 472 +155 473 +156 474 +156 476 +157 472 +157 476 +158 472 +158 474 +158 475 +159 475 +159 476 +159 477 +159 478 +160 474 +160 475 +160 477 +160 479 +160 480 +161 478 +161 481 +162 478 +162 479 +162 480 +162 483 +163 478 +163 481 +163 482 +163 483 +165 481 +166 483 +168 482 +169 482 +169 483 +169 485 +170 485 +170 486 +171 484 +172 486 +173 484 +173 486 +173 490 +173 493 +174 488 +174 489 +174 491 +174 493 +175 488 +175 490 +175 492 +175 493 +176 494 +176 497 +177 494 +177 498 +178 491 +178 492 +178 494 +178 495 +178 496 +178 498 +179 496 +179 497 +179 498 +179 499 +179 500 +180 497 +180 498 +180 499 +180 500 +181 500 +181 501 +182 499 +182 502 +183 499 +183 502 +184 499 +184 500 +185 504 +185 505 +186 501 +186 502 +186 503 +186 505 +187 502 +187 503 +188 503 +188 504 +188 505 +188 506 +188 507 +189 504 +189 505 +189 507 +189 508 +189 509 +190 506 +190 507 +191 508 +191 509 +191 510 +191 511 +192 509 +193 508 +193 510 +193 511 +193 512 +194 509 +194 512 +195 510 +196 511 +196 512 +197 512 +197 513 +197 514 +198 511 +198 512 +198 513 +198 514 +198 515 +199 513 +199 514 +200 515 +201 513 +201 514 +201 515 +201 516 +202 514 +202 515 +202 517 +202 518 +202 519 +203 516 +203 517 +204 518 +204 520 +204 521 +205 519 +205 520 +205 522 +206 518 +206 523 +206 524 +207 520 +207 523 +208 523 +208 526 +209 521 +209 524 +209 526 +209 527 +210 522 +210 524 +210 525 +210 530 +211 528 +211 529 +211 530 +211 531 +211 532 +211 533 +212 529 +212 534 +213 532 +213 533 +213 534 +214 534 +214 535 +214 536 +214 537 +215 533 +215 536 +217 533 +217 536 +218 535 +218 539 +219 536 +219 537 +219 539 +219 540 +220 537 +220 540 +221 537 +221 540 +222 540 +222 541 +224 539 +224 541 +225 540 +226 540 +227 541 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/instances/26.gr b/src/githubtests/medium_test_set/instances/26.gr new file mode 100644 index 0000000..fad0ac5 --- /dev/null +++ b/src/githubtests/medium_test_set/instances/26.gr @@ -0,0 +1,671 @@ +p ocr 260 329 670 +1 261 +1 262 +2 261 +2 262 +3 261 +3 262 +3 263 +3 264 +4 261 +4 262 +4 263 +4 265 +5 263 +5 264 +5 265 +5 266 +6 265 +6 266 +7 264 +7 267 +8 265 +8 266 +8 268 +9 266 +9 268 +9 269 +10 267 +10 269 +10 270 +10 272 +11 268 +11 269 +11 272 +12 272 +13 271 +14 272 +15 272 +15 273 +16 273 +17 272 +18 274 +19 273 +20 273 +21 273 +21 274 +21 276 +22 273 +22 274 +22 275 +22 276 +23 275 +23 276 +24 274 +24 276 +24 277 +25 276 +25 279 +26 276 +26 278 +26 280 +27 277 +27 278 +27 280 +27 281 +28 280 +28 282 +28 283 +29 282 +29 283 +30 282 +30 283 +31 283 +32 283 +32 284 +32 285 +33 283 +33 285 +33 287 +34 285 +34 286 +34 288 +34 289 +35 285 +35 287 +35 288 +35 290 +36 288 +36 289 +36 290 +36 291 +36 292 +36 293 +37 290 +37 291 +37 292 +37 293 +37 295 +38 293 +38 296 +39 293 +39 294 +40 293 +40 296 +41 294 +42 296 +43 295 +43 296 +44 298 +46 297 +46 299 +47 299 +48 297 +48 298 +48 299 +48 300 +48 302 +49 299 +49 300 +49 303 +50 300 +50 301 +50 302 +50 304 +51 302 +51 303 +51 304 +52 303 +52 304 +52 307 +53 304 +53 305 +53 306 +54 304 +54 305 +54 306 +54 308 +55 306 +55 307 +55 308 +55 309 +55 310 +55 311 +55 312 +56 310 +56 311 +56 312 +56 313 +57 311 +57 313 +58 312 +58 314 +59 312 +59 315 +59 316 +59 318 +60 314 +60 315 +60 316 +60 317 +60 319 +60 320 +61 319 +61 320 +61 321 +62 319 +62 321 +62 322 +63 320 +63 322 +63 323 +64 321 +64 323 +65 322 +65 323 +65 324 +65 325 +66 323 +66 326 +67 323 +67 324 +68 324 +68 325 +68 326 +68 327 +68 328 +69 327 +69 329 +70 327 +70 329 +71 327 +71 328 +71 329 +71 330 +72 329 +72 330 +73 329 +73 330 +74 329 +74 330 +75 330 +76 330 +76 331 +77 332 +78 332 +79 331 +80 331 +80 332 +82 332 +83 331 +84 332 +85 332 +85 333 +86 333 +88 334 +89 336 +90 333 +90 334 +90 335 +91 334 +91 336 +91 337 +91 338 +92 334 +92 335 +92 337 +92 338 +93 337 +93 339 +95 337 +95 338 +95 339 +95 340 +96 338 +96 339 +96 340 +96 341 +96 342 +97 341 +97 344 +98 340 +98 341 +98 342 +98 343 +98 344 +98 345 +99 344 +99 345 +99 346 +99 347 +100 344 +100 345 +100 347 +100 348 +101 346 +101 347 +101 348 +101 349 +102 347 +102 348 +103 348 +103 349 +104 350 +105 350 +106 349 +106 350 +107 349 +107 350 +108 350 +108 351 +108 353 +108 354 +109 350 +109 351 +109 354 +109 355 +110 353 +110 354 +110 355 +111 354 +111 355 +111 356 +112 355 +112 356 +112 357 +113 355 +113 358 +114 356 +114 357 +114 358 +115 357 +115 358 +116 357 +116 358 +116 359 +117 358 +117 359 +117 360 +118 358 +118 359 +118 360 +119 359 +119 360 +119 361 +120 360 +120 361 +121 360 +121 362 +122 360 +122 363 +123 361 +123 363 +124 361 +124 364 +125 363 +125 364 +126 363 +126 364 +127 363 +127 364 +127 365 +128 365 +128 366 +129 365 +130 365 +130 366 +130 367 +131 365 +131 366 +132 367 +132 368 +133 366 +133 367 +133 368 +134 366 +134 368 +134 370 +134 371 +135 368 +135 369 +135 371 +136 371 +137 369 +137 371 +137 372 +138 372 +139 371 +139 372 +140 372 +141 372 +141 373 +142 372 +142 374 +142 376 +143 372 +143 374 +144 373 +144 374 +144 377 +145 378 +145 380 +146 377 +146 380 +146 381 +147 378 +147 380 +148 380 +148 381 +148 382 +148 383 +149 380 +150 381 +150 384 +151 382 +151 384 +151 385 +152 383 +152 384 +152 386 +153 385 +154 384 +154 385 +155 385 +155 386 +156 386 +156 387 +156 388 +156 389 +157 386 +157 387 +158 387 +158 389 +159 389 +160 387 +160 388 +161 389 +161 390 +163 390 +163 391 +163 392 +164 390 +165 390 +165 392 +165 393 +166 391 +166 392 +166 395 +167 392 +167 394 +167 395 +168 394 +168 396 +169 394 +169 395 +169 398 +169 399 +170 395 +170 397 +170 398 +170 399 +170 400 +171 400 +171 402 +172 399 +172 400 +172 402 +173 399 +173 402 +174 402 +176 402 +177 402 +177 403 +178 402 +178 404 +179 403 +179 404 +180 403 +181 403 +181 404 +181 405 +182 404 +182 405 +183 404 +183 405 +183 406 +184 404 +184 405 +184 406 +185 406 +185 408 +186 406 +186 408 +186 409 +187 406 +188 409 +189 408 +189 409 +189 410 +189 411 +189 412 +190 408 +190 410 +190 411 +190 413 +191 411 +191 412 +192 411 +192 412 +192 413 +192 414 +193 412 +193 414 +193 415 +193 418 +194 414 +194 416 +194 417 +194 419 +195 417 +195 420 +196 417 +196 419 +196 420 +196 421 +197 420 +197 421 +197 422 +198 419 +199 422 +200 421 +200 422 +200 424 +200 426 +201 421 +201 422 +201 423 +201 427 +202 425 +202 428 +202 429 +202 431 +203 427 +203 428 +203 430 +204 430 +204 431 +205 429 +205 430 +205 431 +205 432 +205 433 +206 431 +206 432 +206 434 +207 433 +208 434 +208 435 +209 433 +209 435 +210 434 +210 435 +210 436 +210 437 +211 434 +211 435 +211 436 +211 437 +212 436 +212 437 +212 438 +213 437 +213 438 +214 437 +214 438 +214 439 +216 438 +217 438 +217 439 +217 440 +217 441 +218 439 +218 440 +218 442 +219 440 +219 442 +220 440 +220 442 +220 443 +221 442 +221 444 +221 445 +222 442 +222 443 +222 444 +222 445 +223 444 +223 445 +223 446 +224 446 +225 444 +225 445 +225 446 +225 447 +225 448 +226 447 +226 448 +227 446 +227 447 +228 448 +228 449 +229 449 +230 448 +230 449 +231 451 +232 449 +232 450 +232 451 +232 453 +233 450 +233 451 +233 452 +233 454 +234 451 +234 453 +234 454 +234 455 +235 452 +235 454 +235 456 +235 457 +236 454 +236 455 +236 456 +236 457 +236 458 +236 460 +237 457 +237 458 +237 459 +237 460 +238 457 +238 461 +239 459 +239 460 +239 461 +239 463 +240 460 +240 461 +240 462 +240 463 +240 465 +241 462 +241 463 +241 464 +241 465 +241 467 +242 464 +242 465 +242 467 +242 469 +242 470 +243 467 +243 469 +243 470 +243 472 +244 470 +244 471 +244 472 +245 469 +245 474 +246 471 +246 472 +246 473 +246 475 +246 476 +246 478 +247 474 +247 475 +247 476 +247 479 +249 481 +249 482 +249 483 +250 482 +250 483 +251 481 +252 485 +253 484 +254 483 +254 485 +254 486 +255 484 +255 485 +255 486 +255 487 +256 485 +256 488 +257 486 +257 488 +258 486 +258 487 +258 488 +258 489 +259 488 +259 489 +259 490 +260 488 +260 489 +260 490 +260 491 +260 492 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/instances/27.gr b/src/githubtests/medium_test_set/instances/27.gr new file mode 100644 index 0000000..aa7b33a --- /dev/null +++ b/src/githubtests/medium_test_set/instances/27.gr @@ -0,0 +1,145 @@ +p ocr 72 72 144 +1 79 +1 85 +2 132 +2 139 +3 84 +3 110 +4 110 +4 124 +5 89 +5 124 +6 89 +6 123 +7 90 +7 105 +8 122 +8 140 +9 77 +9 140 +10 103 +10 119 +11 102 +11 134 +12 132 +12 135 +13 100 +13 139 +14 97 +14 125 +15 100 +15 134 +16 105 +16 135 +17 122 +17 123 +18 90 +18 116 +19 106 +19 116 +20 76 +20 106 +21 76 +21 129 +22 111 +22 113 +23 92 +23 138 +24 92 +24 101 +25 101 +25 144 +26 73 +26 144 +27 73 +27 115 +28 74 +28 115 +29 74 +29 80 +30 80 +30 142 +31 107 +31 142 +32 107 +32 131 +33 114 +33 131 +34 112 +34 114 +35 109 +35 112 +36 109 +36 130 +37 82 +37 130 +38 82 +38 128 +39 103 +39 128 +40 77 +40 102 +41 96 +41 119 +42 96 +42 104 +43 104 +43 117 +44 117 +44 141 +45 83 +45 141 +46 83 +46 94 +47 94 +47 143 +48 86 +48 143 +49 86 +49 99 +50 99 +50 113 +51 129 +51 138 +52 108 +52 111 +53 108 +53 127 +54 127 +54 133 +55 81 +55 133 +56 81 +56 95 +57 87 +57 95 +58 87 +58 120 +59 93 +59 120 +60 93 +60 136 +61 126 +61 136 +62 78 +62 126 +63 79 +63 84 +64 88 +64 121 +65 98 +65 121 +66 98 +66 137 +67 75 +67 137 +68 75 +68 97 +69 78 +69 88 +70 118 +70 125 +71 91 +71 118 +72 85 +72 91 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/instances/28.gr b/src/githubtests/medium_test_set/instances/28.gr new file mode 100644 index 0000000..55b780f --- /dev/null +++ b/src/githubtests/medium_test_set/instances/28.gr @@ -0,0 +1,215 @@ +p ocr 107 107 214 +1 181 +1 182 +2 181 +2 202 +3 179 +3 202 +4 179 +4 195 +5 156 +5 195 +6 156 +6 177 +7 177 +7 196 +8 126 +8 196 +9 113 +9 126 +10 123 +10 155 +11 143 +11 151 +12 159 +12 180 +13 115 +13 214 +14 134 +14 136 +15 134 +15 200 +16 193 +16 200 +17 111 +17 170 +18 128 +18 158 +19 158 +19 204 +20 191 +20 204 +21 115 +21 191 +22 110 +22 121 +23 194 +23 214 +24 172 +24 194 +25 132 +25 172 +26 132 +26 169 +27 160 +27 169 +28 160 +28 185 +29 154 +29 185 +30 154 +30 207 +31 145 +31 175 +32 171 +32 208 +33 162 +33 208 +34 110 +34 162 +35 136 +35 138 +36 121 +36 133 +37 133 +37 212 +38 199 +38 212 +39 192 +39 199 +40 186 +40 192 +41 186 +41 190 +42 163 +42 190 +43 140 +43 163 +44 140 +44 146 +45 119 +45 146 +46 119 +46 157 +47 157 +47 205 +48 131 +48 183 +49 159 +49 182 +50 165 +50 176 +51 120 +51 165 +52 120 +52 197 +53 166 +53 197 +54 153 +54 166 +55 153 +55 188 +56 149 +56 188 +57 144 +57 149 +58 144 +58 152 +59 152 +59 173 +60 109 +60 173 +61 109 +61 122 +62 122 +62 209 +63 116 +63 209 +64 116 +64 203 +65 130 +65 203 +66 130 +66 141 +67 141 +67 175 +68 171 +68 207 +69 137 +69 145 +70 137 +70 183 +71 205 +71 206 +72 131 +72 135 +73 135 +73 142 +74 142 +74 168 +75 168 +75 187 +76 124 +76 187 +77 124 +77 213 +78 155 +78 213 +79 113 +79 143 +80 112 +80 164 +81 139 +81 210 +82 167 +82 210 +83 147 +83 167 +84 147 +84 150 +85 112 +85 150 +86 123 +86 139 +87 117 +87 164 +88 114 +88 117 +89 108 +89 114 +90 108 +90 198 +91 111 +91 198 +92 128 +92 193 +93 129 +93 170 +94 184 +94 189 +95 127 +95 201 +96 174 +96 201 +97 125 +97 174 +98 125 +98 211 +99 148 +99 211 +100 118 +100 148 +101 118 +101 184 +102 127 +102 129 +103 161 +103 189 +104 161 +104 178 +105 178 +105 180 +106 138 +106 151 +107 176 +107 206 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/instances/29.gr b/src/githubtests/medium_test_set/instances/29.gr new file mode 100644 index 0000000..f8e7e65 --- /dev/null +++ b/src/githubtests/medium_test_set/instances/29.gr @@ -0,0 +1,399 @@ +p ocr 199 199 398 +1 218 +1 383 +2 218 +2 384 +3 229 +3 279 +4 377 +4 393 +5 358 +5 393 +6 209 +6 358 +7 209 +7 211 +8 211 +8 355 +9 201 +9 355 +10 201 +10 214 +11 214 +11 286 +12 286 +12 316 +13 316 +13 387 +14 246 +14 374 +15 280 +15 324 +16 246 +16 332 +17 267 +17 353 +18 250 +18 302 +19 319 +19 334 +20 243 +20 291 +21 255 +21 382 +22 295 +22 340 +23 225 +23 295 +24 225 +24 370 +25 321 +25 370 +26 238 +26 321 +27 238 +27 315 +28 271 +28 315 +29 271 +29 380 +30 266 +30 380 +31 266 +31 324 +32 260 +32 282 +33 280 +33 388 +34 226 +34 388 +35 226 +35 357 +36 328 +36 357 +37 232 +37 328 +38 232 +38 360 +39 262 +39 360 +40 262 +40 372 +41 337 +41 372 +42 337 +42 349 +43 336 +43 349 +44 336 +44 343 +45 210 +45 343 +46 210 +46 264 +47 308 +47 331 +48 294 +48 371 +49 260 +49 284 +50 284 +50 386 +51 301 +51 386 +52 277 +52 301 +53 277 +53 285 +54 285 +54 354 +55 354 +55 376 +56 273 +56 376 +57 273 +57 344 +58 257 +58 344 +59 276 +59 319 +60 253 +60 361 +61 361 +61 397 +62 252 +62 397 +63 203 +63 252 +64 203 +64 394 +65 351 +65 394 +66 200 +66 351 +67 234 +67 368 +68 299 +68 396 +69 385 +69 396 +70 369 +70 385 +71 338 +71 369 +72 231 +72 236 +73 207 +73 347 +74 207 +74 327 +75 202 +75 327 +76 202 +76 366 +77 233 +77 366 +78 233 +78 392 +79 275 +79 392 +80 275 +80 312 +81 230 +81 312 +82 230 +82 335 +83 296 +83 335 +84 296 +84 331 +85 264 +85 282 +86 308 +86 341 +87 245 +87 341 +88 216 +88 245 +89 216 +89 235 +90 235 +90 381 +91 290 +91 381 +92 290 +92 390 +93 239 +93 390 +94 239 +94 364 +95 251 +95 265 +96 270 +96 395 +97 205 +97 395 +98 205 +98 294 +99 221 +99 310 +100 251 +100 371 +101 270 +101 364 +102 265 +102 322 +103 322 +103 325 +104 208 +104 325 +105 208 +105 237 +106 237 +106 268 +107 297 +107 318 +108 318 +108 365 +109 298 +109 348 +110 297 +110 306 +111 219 +111 306 +112 219 +112 288 +113 288 +113 375 +114 220 +114 375 +115 220 +115 304 +116 304 +116 320 +117 279 +117 320 +118 377 +118 384 +119 287 +119 379 +120 215 +120 278 +121 261 +121 278 +122 261 +122 389 +123 367 +123 389 +124 224 +124 367 +125 224 +125 248 +126 248 +126 378 +127 378 +127 398 +128 247 +128 398 +129 247 +129 307 +130 259 +130 307 +131 259 +131 350 +132 292 +132 350 +133 292 +133 330 +134 274 +134 330 +135 274 +135 283 +136 283 +136 310 +137 374 +137 387 +138 221 +138 329 +139 329 +139 368 +140 200 +140 299 +141 234 +141 289 +142 213 +142 289 +143 213 +143 391 +144 222 +144 391 +145 222 +145 356 +146 309 +146 356 +147 352 +147 362 +148 269 +148 373 +149 287 +149 373 +150 215 +150 229 +151 300 +151 379 +152 241 +152 300 +153 241 +153 263 +154 217 +154 263 +155 217 +155 298 +156 268 +156 365 +157 333 +157 348 +158 254 +158 333 +159 254 +159 334 +160 243 +160 302 +161 253 +161 257 +162 276 +162 326 +163 346 +163 363 +164 326 +164 363 +165 231 +165 346 +166 338 +166 347 +167 228 +167 236 +168 206 +168 228 +169 206 +169 303 +170 293 +170 303 +171 272 +171 293 +172 272 +172 359 +173 281 +173 359 +174 249 +174 281 +175 249 +175 323 +176 317 +176 323 +177 313 +177 317 +178 305 +178 313 +179 305 +179 339 +180 227 +180 339 +181 227 +181 240 +182 240 +182 314 +183 314 +183 362 +184 269 +184 309 +185 311 +185 352 +186 311 +186 353 +187 250 +187 332 +188 256 +188 267 +189 212 +189 256 +190 212 +190 382 +191 291 +191 340 +192 255 +192 342 +193 223 +193 342 +194 223 +194 345 +195 244 +195 345 +196 242 +196 244 +197 242 +197 258 +198 204 +198 258 +199 204 +199 383 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/instances/3.gr b/src/githubtests/medium_test_set/instances/3.gr new file mode 100644 index 0000000..451a8ee --- /dev/null +++ b/src/githubtests/medium_test_set/instances/3.gr @@ -0,0 +1,60 @@ +p ocr 14 20 59 +1 15 +1 16 +1 17 +1 18 +1 19 +1 20 +1 22 +1 29 +1 30 +1 31 +2 25 +3 21 +3 26 +3 27 +3 28 +3 33 +4 15 +4 16 +4 17 +4 18 +4 19 +4 20 +4 22 +4 25 +4 29 +4 30 +4 31 +5 25 +6 27 +6 33 +6 34 +7 24 +7 25 +8 15 +8 16 +8 17 +8 18 +8 19 +8 20 +8 22 +8 29 +8 30 +8 31 +9 21 +9 26 +9 28 +9 33 +10 23 +11 16 +11 17 +11 25 +11 31 +12 25 +13 23 +14 21 +14 26 +14 27 +14 28 +14 33 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/instances/30.gr b/src/githubtests/medium_test_set/instances/30.gr new file mode 100644 index 0000000..54c3a6f --- /dev/null +++ b/src/githubtests/medium_test_set/instances/30.gr @@ -0,0 +1,185 @@ +p ocr 92 92 184 +1 129 +1 172 +2 96 +2 145 +3 103 +3 135 +4 131 +4 177 +5 163 +5 167 +6 97 +6 140 +7 110 +7 142 +8 109 +8 183 +9 96 +9 137 +10 130 +10 179 +11 113 +11 146 +12 127 +12 172 +13 118 +13 157 +14 105 +14 154 +15 101 +15 128 +16 113 +16 165 +17 126 +17 153 +18 116 +18 136 +19 131 +19 155 +20 99 +20 111 +21 107 +21 183 +22 100 +22 153 +23 112 +23 175 +24 128 +24 182 +25 99 +25 117 +26 111 +26 159 +27 97 +27 117 +28 116 +28 147 +29 134 +29 174 +30 124 +30 139 +31 148 +31 169 +32 118 +32 121 +33 101 +33 168 +34 147 +34 170 +35 141 +35 171 +36 122 +36 127 +37 123 +37 152 +38 106 +38 119 +39 106 +39 182 +40 98 +40 154 +41 138 +41 157 +42 122 +42 167 +43 168 +43 174 +44 143 +44 160 +45 107 +45 166 +46 148 +46 163 +47 104 +47 129 +48 102 +48 151 +49 115 +49 123 +50 136 +50 162 +51 110 +51 180 +52 102 +52 180 +53 166 +53 181 +54 94 +54 158 +55 150 +55 171 +56 125 +56 133 +57 130 +57 155 +58 135 +58 164 +59 119 +59 124 +60 108 +60 141 +61 112 +61 184 +62 138 +62 159 +63 164 +63 177 +64 108 +64 137 +65 104 +65 105 +66 134 +66 145 +67 144 +67 152 +68 132 +68 151 +69 120 +69 149 +70 103 +70 120 +71 150 +71 184 +72 93 +72 160 +73 126 +73 169 +74 173 +74 178 +75 125 +75 158 +76 100 +76 115 +77 109 +77 114 +78 156 +78 161 +79 132 +79 173 +80 149 +80 170 +81 114 +81 176 +82 133 +82 162 +83 165 +83 175 +84 93 +84 181 +85 95 +85 121 +86 144 +86 146 +87 95 +87 178 +88 94 +88 143 +89 156 +89 179 +90 139 +90 142 +91 98 +91 161 +92 140 +92 176 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/instances/31.gr b/src/githubtests/medium_test_set/instances/31.gr new file mode 100644 index 0000000..fc0663e --- /dev/null +++ b/src/githubtests/medium_test_set/instances/31.gr @@ -0,0 +1,301 @@ +p ocr 150 150 300 +1 187 +1 207 +2 248 +2 272 +3 158 +3 193 +4 237 +4 266 +5 208 +5 278 +6 233 +6 286 +7 188 +7 287 +8 180 +8 293 +9 259 +9 285 +10 243 +10 245 +11 178 +11 256 +12 174 +12 177 +13 206 +13 259 +14 224 +14 236 +15 247 +15 280 +16 196 +16 270 +17 167 +17 279 +18 161 +18 265 +19 201 +19 253 +20 197 +20 240 +21 230 +21 251 +22 260 +22 290 +23 176 +23 184 +24 246 +24 298 +25 160 +25 273 +26 237 +26 289 +27 209 +27 262 +28 175 +28 190 +29 268 +29 293 +30 204 +30 277 +31 242 +31 280 +32 172 +32 190 +33 226 +33 270 +34 151 +34 210 +35 214 +35 232 +36 212 +36 277 +37 156 +37 178 +38 175 +38 274 +39 174 +39 214 +40 243 +40 276 +41 216 +41 225 +42 213 +42 229 +43 165 +43 227 +44 164 +44 221 +45 257 +45 269 +46 169 +46 264 +47 184 +47 216 +48 177 +48 231 +49 207 +49 261 +50 220 +50 241 +51 194 +51 234 +52 154 +52 182 +53 205 +53 254 +54 220 +54 264 +55 179 +55 199 +56 193 +56 282 +57 170 +57 285 +58 205 +58 219 +59 211 +59 224 +60 153 +60 157 +61 166 +61 275 +62 165 +62 195 +63 162 +63 218 +64 194 +64 297 +65 163 +65 186 +66 162 +66 203 +67 217 +67 249 +68 199 +68 284 +69 161 +69 251 +70 238 +70 296 +71 201 +71 223 +72 228 +72 239 +73 209 +73 267 +74 254 +74 281 +75 159 +75 291 +76 189 +76 241 +77 155 +77 292 +78 170 +78 260 +79 238 +79 281 +80 206 +80 294 +81 200 +81 255 +82 153 +82 275 +83 222 +83 240 +84 176 +84 227 +85 151 +85 299 +86 202 +86 282 +87 250 +87 268 +88 261 +88 297 +89 158 +89 210 +90 242 +90 276 +91 256 +91 263 +92 172 +92 191 +93 159 +93 239 +94 156 +94 228 +95 152 +95 274 +96 217 +96 271 +97 202 +97 266 +98 265 +98 295 +99 152 +99 185 +100 168 +100 236 +101 163 +101 273 +102 262 +102 288 +103 232 +103 267 +104 213 +104 219 +105 218 +105 292 +106 192 +106 244 +107 183 +107 230 +108 192 +108 300 +109 187 +109 283 +110 249 +110 279 +111 252 +111 288 +112 222 +112 294 +113 208 +113 234 +114 191 +114 198 +115 181 +115 263 +116 223 +116 235 +117 155 +117 225 +118 211 +118 231 +119 215 +119 248 +120 182 +120 185 +121 269 +121 287 +122 171 +122 173 +123 198 +123 233 +124 160 +124 229 +125 167 +125 257 +126 204 +126 247 +127 173 +127 200 +128 250 +128 298 +129 226 +129 295 +130 168 +130 195 +131 189 +131 296 +132 258 +132 299 +133 252 +133 290 +134 183 +134 300 +135 278 +135 289 +136 171 +136 212 +137 197 +137 253 +138 235 +138 291 +139 180 +139 245 +140 188 +140 272 +141 164 +141 181 +142 255 +142 283 +143 154 +143 244 +144 196 +144 221 +145 157 +145 186 +146 169 +146 246 +147 166 +147 271 +148 179 +148 203 +149 215 +149 284 +150 258 +150 286 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/instances/32.gr b/src/githubtests/medium_test_set/instances/32.gr new file mode 100644 index 0000000..e6a7e4f --- /dev/null +++ b/src/githubtests/medium_test_set/instances/32.gr @@ -0,0 +1,387 @@ +p ocr 193 193 386 +1 226 +1 264 +2 269 +2 352 +3 270 +3 313 +4 302 +4 319 +5 227 +5 291 +6 269 +6 293 +7 257 +7 323 +8 196 +8 314 +9 218 +9 372 +10 199 +10 241 +11 241 +11 295 +12 246 +12 367 +13 260 +13 318 +14 256 +14 334 +15 234 +15 292 +16 273 +16 361 +17 198 +17 314 +18 366 +18 383 +19 229 +19 267 +20 327 +20 380 +21 296 +21 319 +22 230 +22 280 +23 245 +23 291 +24 244 +24 365 +25 217 +25 335 +26 336 +26 371 +27 274 +27 338 +28 301 +28 369 +29 250 +29 336 +30 268 +30 329 +31 201 +31 256 +32 261 +32 349 +33 297 +33 332 +34 311 +34 353 +35 196 +35 265 +36 234 +36 359 +37 252 +37 356 +38 226 +38 249 +39 198 +39 382 +40 195 +40 379 +41 243 +41 293 +42 212 +42 386 +43 259 +43 332 +44 213 +44 231 +45 197 +45 381 +46 251 +46 359 +47 206 +47 385 +48 228 +48 328 +49 205 +49 337 +50 239 +50 289 +51 266 +51 368 +52 194 +52 373 +53 254 +53 320 +54 233 +54 325 +55 220 +55 237 +56 203 +56 307 +57 313 +57 378 +58 282 +58 315 +59 209 +59 381 +60 284 +60 354 +61 202 +61 299 +62 210 +62 227 +63 304 +63 368 +64 222 +64 338 +65 288 +65 328 +66 299 +66 315 +67 197 +67 358 +68 340 +68 366 +69 218 +69 222 +70 344 +70 383 +71 253 +71 330 +72 283 +72 321 +73 263 +73 301 +74 281 +74 330 +75 194 +75 335 +76 243 +76 326 +77 259 +77 263 +78 223 +78 278 +79 236 +79 376 +80 255 +80 377 +81 267 +81 350 +82 280 +82 316 +83 262 +83 265 +84 308 +84 372 +85 212 +85 286 +86 298 +86 306 +87 246 +87 303 +88 224 +88 342 +89 307 +89 352 +90 204 +90 244 +91 376 +91 385 +92 224 +92 351 +93 262 +93 268 +94 311 +94 337 +95 310 +95 377 +96 370 +96 371 +97 275 +97 329 +98 201 +98 279 +99 275 +99 297 +100 202 +100 302 +101 294 +101 324 +102 283 +102 334 +103 348 +103 351 +104 223 +104 231 +105 225 +105 238 +106 209 +106 308 +107 230 +107 277 +108 285 +108 321 +109 344 +109 363 +110 200 +110 298 +111 295 +111 303 +112 211 +112 309 +113 240 +113 272 +114 251 +114 342 +115 279 +115 320 +116 235 +116 353 +117 294 +117 345 +118 228 +118 261 +119 282 +119 305 +120 264 +120 289 +121 216 +121 316 +122 341 +122 370 +123 356 +123 363 +124 211 +124 250 +125 317 +125 339 +126 333 +126 386 +127 233 +127 288 +128 205 +128 247 +129 200 +129 348 +130 239 +130 341 +131 214 +131 380 +132 208 +132 292 +133 257 +133 350 +134 340 +134 384 +135 276 +135 373 +136 248 +136 374 +137 333 +137 358 +138 354 +138 375 +139 199 +139 361 +140 272 +140 349 +141 300 +141 347 +142 284 +142 362 +143 278 +143 300 +144 306 +144 322 +145 215 +145 360 +146 236 +146 248 +147 255 +147 290 +148 240 +148 252 +149 260 +149 273 +150 221 +150 382 +151 270 +151 331 +152 206 +152 290 +153 357 +153 379 +154 271 +154 287 +155 203 +155 285 +156 215 +156 217 +157 213 +157 318 +158 249 +158 331 +159 232 +159 343 +160 247 +160 254 +161 281 +161 287 +162 207 +162 276 +163 296 +163 339 +164 221 +164 384 +165 324 +165 378 +166 322 +166 346 +167 229 +167 309 +168 258 +168 346 +169 258 +169 304 +170 242 +170 245 +171 362 +171 369 +172 286 +172 323 +173 235 +173 238 +174 204 +174 317 +175 219 +175 232 +176 345 +176 367 +177 312 +177 360 +178 327 +178 364 +179 195 +179 312 +180 266 +180 305 +181 225 +181 355 +182 210 +182 343 +183 310 +183 325 +184 214 +184 326 +185 207 +185 271 +186 220 +186 357 +187 347 +187 375 +188 216 +188 242 +189 237 +189 355 +190 364 +190 374 +191 274 +191 365 +192 208 +192 277 +193 219 +193 253 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/instances/33.gr b/src/githubtests/medium_test_set/instances/33.gr new file mode 100644 index 0000000..5a451d5 --- /dev/null +++ b/src/githubtests/medium_test_set/instances/33.gr @@ -0,0 +1,568 @@ +p ocr 161 162 567 +1 178 +1 262 +1 322 +2 178 +2 188 +2 209 +2 262 +2 322 +3 178 +3 188 +3 209 +4 188 +4 209 +5 171 +5 183 +5 209 +5 285 +5 310 +6 171 +6 285 +6 310 +7 171 +8 171 +8 266 +9 266 +9 269 +10 172 +10 232 +10 235 +10 266 +10 269 +10 316 +11 172 +11 232 +12 172 +12 232 +12 301 +13 172 +13 232 +13 301 +13 316 +14 176 +14 301 +15 176 +15 273 +15 276 +15 301 +16 176 +16 218 +16 227 +16 237 +16 247 +16 273 +16 281 +16 294 +17 176 +17 218 +17 256 +18 176 +18 182 +18 256 +19 176 +19 182 +19 273 +19 276 +19 294 +20 182 +20 220 +20 237 +20 247 +20 294 +21 220 +21 237 +21 281 +22 220 +22 281 +23 195 +23 220 +23 281 +24 195 +24 227 +24 281 +25 195 +25 227 +26 195 +26 218 +26 227 +27 195 +27 218 +27 256 +28 195 +28 256 +28 317 +29 182 +29 256 +29 317 +30 162 +30 179 +30 182 +30 185 +30 197 +30 217 +30 251 +30 289 +30 317 +31 182 +31 255 +31 272 +31 289 +32 180 +32 182 +32 231 +32 240 +32 272 +33 182 +33 220 +33 240 +34 212 +34 220 +34 240 +34 323 +35 195 +35 212 +35 220 +35 251 +35 317 +36 196 +36 212 +36 222 +36 251 +36 264 +37 162 +37 251 +37 260 +37 264 +38 162 +38 179 +38 185 +38 217 +38 260 +39 179 +39 260 +39 313 +39 321 +40 179 +40 197 +40 321 +41 197 +41 279 +41 289 +41 321 +42 226 +42 250 +42 255 +42 272 +42 279 +42 289 +43 226 +43 272 +44 226 +44 231 +44 272 +44 286 +45 180 +45 231 +45 240 +45 286 +46 177 +46 186 +46 212 +46 222 +46 240 +46 286 +46 323 +47 186 +47 196 +47 222 +48 186 +48 196 +48 270 +48 298 +48 302 +49 196 +49 264 +49 270 +50 219 +50 264 +50 270 +51 219 +51 243 +51 260 +51 264 +51 313 +52 208 +52 243 +52 248 +52 271 +52 313 +53 271 +53 313 +53 321 +54 167 +54 170 +54 181 +54 184 +54 271 +54 279 +54 283 +54 321 +55 167 +55 250 +55 279 +56 167 +56 226 +56 250 +56 288 +57 226 +57 288 +58 177 +58 226 +58 286 +58 288 +59 177 +59 186 +59 202 +59 288 +59 298 +59 302 +60 194 +60 202 +60 224 +60 257 +60 265 +60 270 +60 298 +60 308 +61 175 +61 219 +61 265 +61 270 +62 175 +62 219 +62 243 +63 175 +63 243 +63 319 +64 208 +64 243 +64 248 +64 280 +64 319 +65 203 +65 238 +65 248 +65 271 +65 280 +65 283 +66 238 +66 283 +66 311 +67 168 +67 184 +67 216 +67 267 +67 283 +67 297 +67 311 +68 168 +68 170 +68 184 +69 168 +69 170 +69 181 +69 223 +70 164 +70 167 +70 181 +70 223 +71 164 +71 167 +71 206 +71 300 +72 167 +72 206 +73 167 +73 206 +74 167 +74 206 +74 288 +75 194 +75 202 +75 206 +75 257 +75 288 +76 194 +76 206 +76 308 +77 198 +77 206 +77 224 +77 236 +77 239 +77 241 +77 277 +77 296 +77 308 +78 190 +78 224 +78 241 +78 275 +78 293 +79 174 +79 190 +79 221 +79 224 +79 265 +80 174 +80 265 +81 174 +81 265 +82 174 +82 175 +82 265 +82 319 +83 174 +83 280 +83 319 +84 174 +84 233 +84 280 +85 203 +85 233 +85 280 +86 203 +86 233 +87 203 +87 233 +88 203 +88 233 +89 203 +89 233 +89 238 +90 233 +90 238 +91 233 +91 238 +91 311 +92 233 +92 311 +93 233 +93 311 +94 233 +94 297 +94 311 +95 216 +95 233 +95 267 +95 297 +96 168 +96 233 +96 267 +97 168 +97 233 +98 168 +98 233 +99 168 +99 233 +99 252 +99 261 +100 164 +100 168 +100 223 +100 252 +100 282 +101 164 +101 246 +101 258 +101 282 +101 300 +102 246 +102 300 +103 206 +103 246 +103 300 +104 206 +104 239 +104 246 +104 263 +104 284 +104 309 +105 173 +105 239 +105 263 +105 287 +106 163 +106 225 +106 239 +106 287 +107 163 +107 239 +107 277 +107 296 +108 163 +108 277 +109 163 +109 166 +109 229 +109 236 +109 277 +110 166 +110 169 +110 198 +110 236 +110 241 +110 275 +111 169 +111 275 +112 169 +112 190 +112 221 +112 275 +112 293 +113 169 +113 221 +113 244 +114 221 +114 244 +115 221 +115 244 +115 278 +115 305 +116 221 +116 278 +117 174 +117 221 +117 233 +117 278 +118 233 +118 261 +118 278 +119 261 +119 278 +119 292 +120 261 +120 292 +121 252 +121 261 +121 274 +121 292 +122 252 +122 274 +123 252 +123 274 +124 252 +124 274 +124 282 +125 258 +125 274 +125 282 +126 258 +126 274 +127 246 +127 258 +127 274 +128 204 +128 246 +128 274 +128 284 +128 309 +129 204 +129 253 +129 263 +129 304 +129 309 +130 263 +130 304 +131 173 +131 200 +131 213 +131 263 +131 287 +131 304 +132 200 +132 287 +133 200 +133 242 +133 287 +134 163 +134 225 +134 242 +134 287 +135 163 +135 166 +135 169 +135 215 +135 229 +135 242 +135 244 +135 299 +136 215 +136 244 +136 305 +137 187 +137 201 +137 215 +137 305 +138 165 +138 187 +138 204 +138 274 +138 278 +138 292 +138 305 +138 318 +139 204 +139 318 +140 204 +140 318 +141 306 +141 315 +141 318 +142 315 +143 191 +143 199 +143 211 +143 249 +143 303 +143 312 +143 315 +144 205 +144 210 +144 303 +145 205 +145 245 +145 291 +146 230 +146 291 +147 230 +148 193 +148 230 +148 268 +149 193 +150 193 +151 189 +151 192 +151 193 +152 189 +152 254 +152 259 +152 290 +152 314 +153 314 +154 314 +155 314 +156 314 +157 314 +158 234 +158 314 +159 207 +159 214 +159 228 +159 234 +159 295 +159 307 +159 320 +160 320 +161 320 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/instances/34.gr b/src/githubtests/medium_test_set/instances/34.gr new file mode 100644 index 0000000..2d8fd1d --- /dev/null +++ b/src/githubtests/medium_test_set/instances/34.gr @@ -0,0 +1,1191 @@ +p ocr 300 309 1190 +1 379 +1 545 +1 557 +2 344 +2 346 +2 379 +2 380 +2 395 +2 430 +2 557 +2 598 +3 395 +3 545 +3 557 +4 379 +4 395 +4 430 +4 545 +4 598 +5 382 +5 395 +5 430 +6 346 +6 382 +6 430 +7 310 +7 344 +7 346 +7 382 +7 505 +8 344 +8 378 +8 380 +8 395 +8 505 +9 310 +9 378 +9 382 +9 395 +10 310 +10 378 +10 505 +11 378 +11 505 +12 319 +12 378 +12 607 +13 319 +13 378 +14 319 +14 378 +15 319 +15 378 +15 568 +15 607 +16 319 +16 351 +16 486 +16 565 +16 568 +17 319 +17 351 +18 319 +18 351 +18 447 +18 565 +18 568 +19 447 +19 486 +19 565 +20 351 +20 372 +20 447 +20 477 +20 486 +20 510 +20 578 +21 351 +21 477 +21 498 +22 351 +22 498 +22 518 +23 351 +23 518 +24 351 +24 372 +24 447 +24 518 +25 372 +25 510 +25 518 +26 339 +26 510 +26 518 +26 566 +27 339 +27 412 +27 420 +27 502 +27 510 +27 556 +28 412 +28 477 +28 498 +28 510 +28 578 +29 375 +29 412 +29 416 +29 498 +30 339 +30 375 +30 498 +30 518 +30 556 +30 566 +30 571 +31 376 +31 414 +31 420 +31 422 +31 423 +31 467 +31 527 +31 556 +31 571 +31 592 +32 355 +32 396 +32 414 +32 420 +33 355 +33 420 +34 355 +34 420 +34 502 +35 342 +35 355 +35 502 +36 342 +36 412 +36 502 +36 543 +36 569 +36 581 +37 335 +37 412 +37 416 +37 442 +37 543 +37 563 +38 323 +38 324 +38 416 +38 442 +38 449 +38 506 +38 591 +38 596 +39 323 +39 416 +40 323 +40 375 +40 416 +40 571 +41 323 +41 376 +41 467 +41 571 +41 592 +42 323 +42 381 +42 396 +42 414 +42 422 +42 423 +42 527 +42 592 +43 355 +43 381 +43 396 +44 342 +44 355 +44 381 +44 569 +44 581 +45 381 +45 569 +46 381 +46 569 +47 381 +47 569 +48 381 +48 543 +48 569 +49 381 +49 543 +50 381 +50 543 +51 381 +51 543 +51 563 +52 335 +52 381 +52 426 +52 442 +52 563 +53 426 +53 442 +53 595 +54 442 +54 459 +54 595 +55 442 +55 449 +55 459 +56 449 +56 459 +57 449 +57 459 +58 305 +58 359 +58 449 +58 459 +58 468 +58 471 +59 323 +59 324 +59 359 +59 449 +59 501 +59 506 +59 591 +59 596 +60 323 +60 402 +60 425 +60 453 +60 501 +60 546 +61 323 +61 354 +61 381 +61 546 +62 354 +62 381 +63 354 +63 381 +64 354 +64 381 +64 426 +64 459 +64 595 +65 306 +65 354 +65 459 +65 497 +65 572 +66 305 +66 359 +66 459 +66 468 +66 471 +66 572 +67 359 +67 572 +68 359 +68 501 +68 572 +69 501 +69 572 +70 501 +70 572 +71 357 +71 384 +71 501 +71 507 +71 558 +71 572 +71 608 +72 402 +72 445 +72 501 +72 608 +73 402 +73 445 +73 453 +74 425 +74 445 +74 453 +74 546 +74 584 +75 546 +75 584 +76 354 +76 546 +76 584 +77 354 +77 584 +78 354 +78 584 +78 602 +79 341 +79 354 +79 602 +80 341 +80 354 +81 341 +81 354 +81 609 +82 354 +82 609 +83 354 +83 491 +83 609 +84 354 +84 485 +84 491 +84 521 +84 579 +85 354 +85 521 +86 354 +86 521 +87 354 +87 521 +87 522 +88 303 +88 354 +88 522 +88 531 +88 564 +89 303 +89 354 +90 303 +90 306 +90 354 +90 497 +90 572 +91 303 +91 572 +92 303 +92 347 +92 357 +92 360 +92 367 +92 384 +92 394 +92 417 +92 503 +92 507 +92 558 +92 572 +93 400 +93 417 +93 558 +93 608 +94 400 +94 445 +94 584 +94 608 +95 341 +95 392 +95 400 +95 515 +95 534 +95 542 +95 584 +95 602 +96 322 +96 341 +96 418 +96 542 +96 609 +97 418 +97 609 +98 348 +98 397 +98 418 +98 474 +98 491 +98 609 +99 348 +99 465 +99 490 +99 491 +99 494 +99 544 +99 585 +100 485 +100 491 +100 579 +100 585 +101 521 +101 522 +101 531 +101 579 +101 585 +102 531 +102 585 +103 303 +103 531 +103 564 +103 585 +104 303 +104 367 +104 394 +104 585 +105 365 +105 367 +105 377 +105 431 +105 438 +105 499 +105 526 +105 533 +105 585 +105 605 +106 367 +106 605 +107 347 +107 360 +107 367 +107 390 +107 400 +107 417 +107 503 +107 576 +107 587 +107 605 +108 392 +108 400 +108 475 +108 576 +109 392 +109 475 +110 392 +110 475 +110 515 +110 534 +110 539 +110 542 +111 352 +111 476 +111 539 +111 542 +112 476 +112 542 +113 322 +113 461 +113 476 +113 542 +114 322 +114 397 +114 418 +114 461 +115 397 +115 461 +116 315 +116 397 +116 461 +117 315 +117 397 +117 474 +118 315 +118 474 +119 315 +119 474 +120 315 +120 474 +120 604 +121 474 +121 604 +122 474 +122 604 +123 474 +123 604 +124 348 +124 474 +124 480 +124 604 +125 348 +125 465 +125 480 +125 490 +125 494 +125 544 +125 600 +126 530 +126 544 +126 600 +127 421 +127 514 +127 530 +127 544 +128 514 +128 544 +129 514 +129 544 +130 427 +130 514 +130 544 +130 594 +131 356 +131 427 +131 544 +132 356 +132 544 +133 356 +133 374 +133 509 +133 544 +134 374 +134 544 +135 374 +135 544 +136 374 +136 544 +137 374 +137 544 +138 374 +138 385 +138 526 +138 544 +138 585 +139 385 +139 438 +139 526 +140 311 +140 365 +140 385 +140 431 +140 438 +140 469 +140 499 +140 533 +141 311 +141 478 +141 499 +142 377 +142 478 +142 499 +142 587 +142 605 +143 312 +143 337 +143 390 +143 419 +143 456 +143 478 +143 525 +143 555 +143 587 +143 589 +144 352 +144 390 +144 408 +144 456 +144 470 +144 475 +144 539 +144 576 +145 352 +145 408 +145 476 +146 408 +146 461 +146 476 +147 315 +147 363 +147 408 +147 461 +147 480 +147 487 +147 604 +148 363 +148 424 +148 480 +149 424 +149 480 +150 424 +150 480 +150 481 +150 600 +151 473 +151 481 +151 541 +151 600 +152 541 +152 600 +153 541 +153 600 +154 541 +154 600 +155 349 +155 411 +155 421 +155 444 +155 450 +155 530 +155 541 +155 600 +156 411 +156 421 +157 411 +157 421 +157 514 +157 567 +158 514 +158 567 +159 427 +159 514 +159 567 +159 594 +160 356 +160 371 +160 427 +160 451 +160 483 +160 509 +160 567 +161 374 +161 451 +161 509 +161 549 +162 374 +162 405 +162 549 +163 374 +163 405 +164 374 +164 405 +165 374 +165 405 +166 311 +166 321 +166 361 +166 374 +166 385 +166 405 +166 434 +166 435 +166 437 +166 455 +166 469 +166 513 +166 524 +166 559 +167 311 +167 437 +167 478 +168 312 +168 369 +168 415 +168 437 +168 464 +168 478 +169 312 +169 415 +169 419 +169 525 +169 555 +169 589 +170 337 +170 415 +170 456 +170 470 +170 525 +171 415 +171 470 +172 336 +172 363 +172 408 +172 415 +172 424 +172 470 +172 473 +172 481 +172 487 +173 336 +173 340 +173 473 +173 541 +174 340 +174 541 +175 340 +175 444 +175 541 +176 340 +176 444 +177 340 +177 349 +177 444 +177 446 +177 450 +178 318 +178 373 +178 386 +178 399 +178 436 +178 446 +178 450 +178 492 +178 606 +179 373 +179 407 +179 409 +179 410 +179 411 +179 450 +179 588 +180 371 +180 411 +180 567 +180 588 +181 371 +181 451 +181 457 +181 483 +181 523 +181 588 +182 451 +182 457 +183 313 +183 451 +183 457 +183 560 +184 451 +184 560 +185 451 +185 452 +185 549 +185 560 +186 321 +186 405 +186 452 +186 513 +186 549 +187 302 +187 321 +187 434 +187 452 +188 302 +188 434 +188 516 +188 580 +189 314 +189 330 +189 361 +189 389 +189 393 +189 432 +189 434 +189 441 +189 466 +189 511 +189 516 +190 334 +190 361 +190 432 +191 334 +191 361 +192 334 +192 361 +192 524 +192 547 +193 435 +193 524 +193 547 +193 559 +194 435 +194 437 +194 455 +194 547 +195 437 +195 547 +196 369 +196 437 +196 464 +196 547 +197 370 +197 404 +197 428 +197 464 +197 547 +198 428 +198 464 +198 582 +199 464 +199 582 +200 336 +200 415 +200 464 +200 582 +201 336 +201 582 +202 336 +202 340 +202 429 +202 582 +203 340 +203 429 +203 446 +204 304 +204 429 +204 446 +204 529 +204 532 +205 327 +205 446 +205 529 +206 327 +206 386 +206 436 +206 446 +206 460 +206 492 +207 318 +207 460 +207 492 +207 574 +207 590 +207 606 +208 373 +208 399 +208 489 +208 590 +208 606 +209 373 +209 489 +209 535 +210 373 +210 535 +211 373 +211 409 +211 410 +211 493 +211 535 +212 410 +212 493 +213 407 +213 410 +213 457 +213 493 +213 523 +213 588 +214 313 +214 457 +214 493 +215 313 +215 493 +216 313 +216 493 +216 560 +217 333 +217 358 +217 493 +217 519 +217 560 +218 302 +218 333 +218 452 +218 560 +219 302 +219 333 +219 398 +219 406 +220 302 +220 398 +221 302 +221 398 +222 302 +222 345 +222 398 +222 516 +222 561 +222 562 +222 580 +222 583 +223 389 +223 516 +223 583 +224 314 +224 330 +224 389 +224 393 +224 466 +224 511 +224 583 +225 393 +225 458 +225 583 +225 603 +226 317 +226 334 +226 362 +226 370 +226 393 +226 404 +226 432 +226 441 +226 458 +226 547 +227 362 +227 370 +228 362 +228 370 +228 428 +229 304 +229 362 +229 428 +229 429 +229 575 +229 582 +230 304 +230 540 +230 553 +230 575 +231 304 +231 532 +231 553 +232 327 +232 443 +232 460 +232 529 +232 532 +232 553 +232 574 +232 590 +233 391 +233 443 +233 489 +233 590 +234 391 +234 489 +235 391 +235 489 +236 391 +236 448 +236 489 +237 448 +237 489 +237 535 +237 550 +238 517 +238 535 +238 550 +239 358 +239 493 +239 517 +239 535 +239 573 +240 326 +240 358 +240 439 +240 519 +240 573 +241 333 +241 398 +241 406 +241 439 +241 519 +241 528 +242 398 +242 528 +242 562 +243 496 +243 528 +243 562 +244 496 +244 561 +244 562 +245 383 +245 496 +245 561 +245 577 +245 586 +246 345 +246 561 +246 577 +246 583 +247 317 +247 458 +247 577 +247 583 +247 603 +248 317 +248 577 +249 317 +249 362 +249 462 +249 577 +250 301 +250 309 +250 325 +250 350 +250 353 +250 362 +250 366 +250 462 +250 472 +250 484 +250 488 +250 538 +250 540 +250 551 +250 575 +251 482 +251 540 +251 551 +251 553 +252 482 +252 553 +253 331 +253 364 +253 463 +253 482 +253 504 +253 553 +254 364 +254 553 +255 364 +255 401 +255 443 +255 520 +255 536 +255 553 +256 391 +256 401 +256 443 +256 448 +256 517 +256 550 +257 326 +257 329 +257 401 +257 439 +257 517 +257 552 +257 573 +257 597 +258 329 +258 439 +259 329 +259 439 +260 329 +260 403 +260 439 +260 570 +261 403 +261 439 +261 554 +262 328 +262 388 +262 439 +262 496 +262 528 +262 554 +262 586 +263 325 +263 383 +263 388 +263 440 +263 462 +263 537 +263 577 +263 586 +264 301 +264 325 +264 353 +264 537 +265 353 +265 537 +265 548 +266 307 +266 309 +266 353 +266 484 +266 548 +267 307 +267 309 +267 488 +268 307 +268 488 +269 307 +269 488 +270 307 +270 350 +270 488 +271 307 +271 350 +272 307 +272 316 +272 350 +272 387 +273 350 +273 366 +273 387 +273 472 +273 482 +273 538 +273 551 +273 601 +274 308 +274 331 +274 338 +274 463 +274 482 +274 500 +274 504 +274 601 +275 308 +275 331 +276 308 +276 331 +276 343 +276 364 +276 520 +276 593 +277 479 +277 520 +277 536 +277 593 +278 401 +278 479 +278 536 +279 401 +279 479 +279 552 +279 597 +280 329 +280 413 +280 479 +280 570 +280 597 +281 413 +281 454 +281 570 +282 454 +282 570 +283 403 +283 454 +283 570 +284 403 +284 433 +284 454 +285 320 +285 332 +285 368 +285 403 +285 433 +285 554 +286 328 +286 332 +286 495 +286 554 +287 328 +287 388 +287 495 +288 388 +288 495 +288 508 +288 599 +289 388 +289 440 +289 508 +289 512 +290 440 +290 537 +290 548 +291 548 +292 548 +293 307 +293 316 +293 548 +294 316 +294 338 +294 387 +294 601 +295 338 +296 338 +297 338 +298 308 +298 338 +298 343 +298 500 +298 593 +299 593 +300 593 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/instances/35.gr b/src/githubtests/medium_test_set/instances/35.gr new file mode 100644 index 0000000..ede0c10 --- /dev/null +++ b/src/githubtests/medium_test_set/instances/35.gr @@ -0,0 +1,1489 @@ +p ocr 392 384 1488 +1 410 +2 410 +3 410 +3 759 +4 410 +4 759 +5 410 +5 759 +6 410 +6 484 +6 546 +6 549 +6 561 +6 646 +6 759 +7 410 +7 646 +7 759 +8 646 +8 759 +9 646 +9 759 +10 549 +10 559 +10 561 +10 580 +10 621 +10 646 +10 721 +10 751 +10 759 +10 763 +11 484 +11 549 +11 580 +12 484 +12 580 +13 423 +13 484 +13 553 +13 580 +13 618 +14 423 +14 484 +14 546 +14 559 +14 568 +14 646 +14 763 +15 461 +15 542 +15 551 +15 559 +15 568 +15 621 +15 633 +15 721 +15 751 +15 761 +16 542 +16 751 +17 520 +17 542 +17 553 +17 580 +17 708 +17 751 +18 553 +18 708 +19 404 +19 553 +19 618 +19 708 +20 404 +20 618 +21 404 +21 618 +22 404 +22 618 +22 623 +23 525 +23 618 +23 623 +24 525 +24 618 +25 525 +25 618 +25 713 +25 723 +25 760 +26 618 +26 676 +26 699 +26 723 +27 423 +27 461 +27 568 +27 618 +27 699 +27 761 +28 461 +28 542 +28 551 +28 633 +28 699 +29 451 +29 542 +29 638 +29 699 +30 520 +30 542 +30 638 +30 664 +30 708 +31 664 +31 708 +32 404 +32 525 +32 623 +32 664 +32 708 +33 525 +33 664 +33 760 +34 439 +34 527 +34 634 +34 664 +34 743 +34 760 +35 527 +35 760 +36 527 +36 713 +36 760 +37 455 +37 527 +37 713 +37 723 +38 411 +38 437 +38 455 +38 668 +38 723 +39 437 +39 723 +39 733 +40 676 +40 723 +40 733 +41 676 +41 733 +42 555 +42 676 +42 699 +42 733 +43 407 +43 555 +43 699 +44 407 +44 699 +45 407 +45 699 +46 407 +46 699 +47 407 +47 451 +47 502 +47 638 +47 699 +48 439 +48 502 +48 527 +48 537 +48 634 +48 638 +48 653 +48 664 +48 743 +49 411 +49 455 +49 527 +49 537 +49 682 +50 411 +50 682 +51 411 +51 682 +52 411 +52 437 +52 668 +52 682 +52 733 +53 601 +53 682 +53 733 +54 407 +54 502 +54 535 +54 537 +54 555 +54 601 +54 653 +54 682 +54 733 +55 535 +55 601 +56 396 +56 535 +57 396 +57 481 +57 483 +57 485 +57 535 +58 396 +58 481 +58 483 +58 485 +58 585 +58 591 +58 595 +58 705 +58 724 +59 445 +59 591 +59 724 +60 421 +60 433 +60 445 +60 514 +60 591 +60 595 +61 514 +61 581 +61 585 +61 595 +61 680 +61 705 +62 585 +62 680 +63 585 +63 680 +63 690 +64 585 +64 690 +65 585 +65 690 +66 585 +66 690 +67 418 +67 579 +67 585 +67 685 +67 690 +67 692 +67 693 +67 711 +68 585 +68 685 +69 585 +69 685 +70 445 +70 585 +70 685 +70 724 +71 433 +71 445 +71 685 +71 741 +72 433 +72 741 +73 433 +73 741 +74 433 +74 741 +74 764 +75 433 +75 531 +75 603 +75 640 +75 674 +75 764 +76 433 +76 531 +77 416 +77 433 +77 531 +78 416 +78 421 +78 433 +79 416 +79 421 +80 393 +80 416 +80 421 +81 393 +81 421 +81 514 +81 581 +81 680 +82 393 +82 680 +83 393 +83 680 +84 393 +84 610 +84 680 +84 690 +85 541 +85 610 +85 690 +86 418 +86 467 +86 541 +86 690 +86 693 +87 467 +87 693 +88 467 +88 693 +89 467 +89 687 +89 692 +89 693 +90 579 +90 594 +90 686 +90 687 +90 692 +90 711 +91 603 +91 674 +91 685 +91 686 +91 711 +91 741 +91 764 +92 412 +92 640 +92 674 +92 686 +93 412 +93 531 +93 640 +93 667 +94 393 +94 416 +94 531 +94 667 +95 393 +95 467 +95 541 +95 610 +95 667 +96 467 +96 667 +97 467 +97 594 +97 667 +97 687 +98 594 +98 667 +99 594 +99 667 +100 594 +100 667 +100 686 +100 715 +101 412 +101 607 +101 686 +101 715 +102 412 +102 607 +102 612 +102 667 +102 715 +102 739 +103 607 +103 715 +103 739 +104 607 +104 612 +104 642 +104 739 +105 406 +105 642 +105 698 +106 642 +106 698 +107 402 +107 406 +107 642 +107 662 +107 698 +108 406 +108 454 +108 500 +108 510 +108 662 +108 698 +108 720 +108 744 +109 698 +109 744 +110 402 +110 532 +110 544 +110 684 +110 698 +110 744 +111 402 +111 532 +112 402 +112 532 +113 402 +113 532 +113 533 +114 402 +114 533 +114 662 +115 454 +115 510 +115 533 +115 662 +116 454 +116 533 +117 454 +117 533 +117 540 +118 454 +118 499 +118 540 +119 454 +119 499 +119 515 +119 666 +119 768 +120 454 +120 500 +120 515 +121 500 +121 515 +121 720 +122 515 +122 562 +122 720 +123 556 +123 562 +123 720 +124 544 +124 556 +124 720 +124 744 +125 544 +125 556 +125 684 +126 400 +126 532 +126 533 +126 556 +126 593 +126 684 +127 400 +127 533 +127 757 +128 533 +128 540 +128 588 +128 604 +128 669 +128 679 +128 736 +128 757 +129 444 +129 499 +129 540 +129 604 +129 625 +130 444 +130 499 +130 666 +130 765 +131 666 +131 765 +132 666 +132 765 +133 666 +133 765 +134 666 +134 765 +134 768 +135 515 +135 742 +135 765 +135 768 +136 515 +136 742 +137 515 +137 707 +137 742 +138 515 +138 556 +138 562 +138 706 +138 707 +139 556 +139 706 +140 556 +140 611 +140 706 +141 400 +141 556 +141 588 +141 593 +141 611 +141 669 +141 757 +142 588 +142 611 +143 457 +143 588 +143 611 +143 679 +143 753 +144 679 +144 736 +144 753 +145 417 +145 428 +145 657 +145 736 +145 753 +146 417 +146 629 +146 736 +146 756 +147 552 +147 736 +147 756 +148 444 +148 552 +148 557 +148 604 +148 613 +148 625 +148 736 +148 765 +149 613 +149 732 +149 765 +150 732 +150 765 +151 567 +151 573 +151 732 +151 765 +152 573 +152 611 +152 706 +152 707 +152 742 +152 765 +153 452 +153 457 +153 573 +153 611 +153 719 +153 775 +154 457 +154 543 +154 719 +155 399 +155 457 +155 480 +155 504 +155 543 +155 622 +155 652 +155 753 +156 480 +156 753 +157 480 +157 753 +158 480 +158 753 +159 480 +159 487 +159 753 +159 769 +160 428 +160 487 +160 753 +161 417 +161 428 +161 487 +161 554 +161 629 +161 657 +161 756 +162 554 +162 756 +163 552 +163 554 +163 624 +163 756 +164 552 +164 557 +164 613 +164 624 +165 613 +165 624 +166 613 +166 624 +167 613 +167 624 +167 732 +168 452 +168 567 +168 573 +168 624 +168 732 +169 398 +169 452 +169 473 +169 511 +169 512 +169 605 +169 624 +169 631 +169 647 +169 775 +170 478 +170 511 +170 719 +170 775 +171 453 +171 478 +171 719 +172 453 +172 719 +173 453 +173 719 +174 453 +174 543 +174 719 +175 453 +175 543 +175 622 +175 652 +176 399 +176 453 +176 652 +177 399 +177 453 +178 399 +178 453 +179 399 +179 409 +179 453 +179 571 +180 399 +180 413 +180 480 +180 504 +180 571 +181 413 +181 480 +182 413 +182 424 +182 480 +182 487 +182 517 +182 554 +182 624 +182 673 +182 677 +182 734 +182 769 +183 424 +183 431 +183 624 +183 774 +184 431 +184 456 +184 606 +184 624 +185 456 +185 512 +185 569 +185 624 +186 512 +186 569 +187 394 +187 442 +187 512 +187 569 +188 394 +188 465 +188 512 +188 631 +189 398 +189 465 +189 473 +189 511 +189 526 +189 605 +189 631 +189 647 +189 754 +190 511 +190 522 +190 526 +190 702 +191 453 +191 478 +191 511 +191 522 +191 617 +191 670 +192 453 +192 670 +193 409 +193 453 +193 571 +193 670 +194 571 +194 670 +195 413 +195 517 +195 529 +195 571 +195 670 +195 673 +195 677 +195 734 +196 397 +196 424 +196 529 +196 677 +196 774 +197 397 +197 431 +197 774 +198 397 +198 431 +199 397 +199 430 +199 431 +199 446 +200 430 +200 431 +200 456 +200 606 +201 430 +201 456 +201 490 +201 643 +201 678 +201 694 +201 722 +202 456 +202 569 +202 722 +203 569 +203 722 +204 569 +204 722 +205 442 +205 569 +205 722 +206 394 +206 442 +206 465 +206 526 +206 658 +206 722 +206 754 +207 526 +207 658 +207 702 +208 528 +208 626 +208 658 +208 702 +209 592 +209 626 +209 702 +210 397 +210 430 +210 446 +210 490 +210 522 +210 529 +210 592 +210 617 +210 670 +210 694 +210 702 +210 704 +211 694 +211 704 +212 678 +212 694 +212 704 +213 475 +213 678 +213 704 +214 475 +214 637 +214 678 +215 566 +215 637 +215 678 +215 700 +216 678 +216 700 +217 468 +217 643 +217 678 +217 700 +218 468 +218 536 +218 589 +218 643 +219 401 +219 432 +219 459 +219 494 +219 528 +219 536 +219 626 +219 643 +219 658 +219 660 +219 722 +220 626 +220 660 +221 592 +221 626 +221 660 +221 771 +222 592 +222 635 +222 731 +222 771 +223 435 +223 475 +223 547 +223 592 +223 635 +223 637 +223 704 +224 435 +224 566 +224 637 +225 408 +225 435 +225 566 +225 700 +225 703 +226 434 +226 441 +226 700 +226 703 +226 712 +226 727 +227 468 +227 675 +227 700 +227 712 +228 463 +228 468 +228 495 +228 536 +228 589 +228 655 +228 663 +228 675 +228 695 +228 755 +229 401 +229 432 +229 494 +229 536 +229 695 +230 458 +230 459 +230 494 +230 586 +230 644 +230 660 +230 695 +230 709 +230 714 +230 731 +230 771 +230 776 +231 582 +231 635 +231 714 +231 731 +232 547 +232 582 +232 635 +233 545 +233 547 +233 582 +234 545 +234 547 +235 545 +235 547 +235 609 +235 710 +235 728 +235 745 +236 408 +236 434 +236 435 +236 441 +236 547 +236 609 +236 675 +236 703 +236 712 +236 727 +237 609 +237 663 +237 675 +237 740 +238 429 +238 572 +238 614 +238 663 +238 740 +239 572 +239 663 +240 572 +240 663 +241 463 +241 506 +241 572 +241 655 +241 663 +242 506 +242 655 +243 458 +243 495 +243 506 +243 655 +243 695 +243 755 +243 776 +244 458 +244 506 +245 458 +245 506 +246 440 +246 458 +246 476 +246 506 +246 558 +247 440 +247 458 +247 563 +247 587 +248 458 +248 586 +248 587 +248 709 +249 486 +249 587 +249 644 +249 709 +250 486 +250 644 +250 714 +251 486 +251 545 +251 582 +251 710 +251 714 +251 728 +251 745 +252 403 +252 486 +252 710 +252 730 +253 710 +253 730 +254 609 +254 710 +254 730 +255 496 +255 509 +255 609 +255 730 +256 496 +256 518 +256 609 +257 429 +257 518 +257 583 +257 609 +257 614 +257 740 +258 583 +258 614 +258 650 +258 766 +259 422 +259 501 +259 614 +259 651 +259 752 +259 766 +260 422 +260 614 +261 422 +261 466 +261 614 +261 627 +261 748 +262 614 +262 627 +263 614 +263 627 +264 469 +264 492 +264 572 +264 614 +264 627 +265 469 +265 506 +265 572 +266 469 +266 506 +266 558 +267 469 +267 539 +267 558 +267 716 +268 530 +268 539 +268 558 +269 530 +269 558 +270 530 +270 558 +271 476 +271 498 +271 521 +271 530 +271 558 +272 403 +272 440 +272 476 +272 486 +272 521 +272 563 +272 587 +272 608 +273 403 +273 508 +273 608 +273 656 +273 671 +273 681 +273 683 +274 403 +274 671 +275 403 +275 671 +275 730 +276 496 +276 509 +276 518 +276 583 +276 650 +276 671 +276 730 +277 426 +277 501 +277 650 +277 651 +277 671 +277 752 +277 766 +278 426 +278 482 +278 513 +278 752 +279 395 +279 513 +279 645 +279 752 +280 497 +280 615 +280 645 +280 752 +281 422 +281 497 +281 578 +281 748 +281 752 +282 438 +282 466 +282 565 +282 578 +282 627 +282 748 +283 471 +283 492 +283 565 +283 627 +284 471 +284 492 +284 570 +285 405 +285 469 +285 479 +285 488 +285 492 +285 570 +285 726 +286 469 +286 488 +286 564 +287 469 +287 523 +287 564 +288 469 +288 523 +289 469 +289 523 +290 414 +290 469 +290 523 +290 539 +290 716 +291 414 +291 443 +291 491 +291 539 +292 443 +292 530 +292 539 +292 772 +293 427 +293 460 +293 498 +293 530 +293 772 +294 427 +294 498 +294 508 +294 521 +294 608 +294 656 +294 683 +295 427 +295 656 +295 681 +296 427 +296 681 +297 427 +297 534 +297 681 +298 426 +298 482 +298 534 +298 671 +298 681 +299 482 +299 534 +299 737 +299 750 +300 482 +300 513 +300 737 +301 395 +301 497 +301 513 +301 584 +301 615 +301 645 +301 737 +302 497 +302 584 +303 405 +303 438 +303 471 +303 497 +303 565 +303 570 +303 578 +303 584 +303 701 +304 405 +304 479 +304 701 +305 415 +305 479 +305 488 +305 701 +305 726 +306 414 +306 415 +306 488 +306 523 +306 560 +306 564 +307 414 +307 450 +307 560 +308 414 +308 450 +309 414 +309 450 +309 491 +310 450 +310 491 +311 443 +311 450 +311 460 +311 491 +311 772 +312 450 +312 460 +312 598 +312 672 +313 460 +313 577 +313 672 +313 696 +313 749 +314 427 +314 460 +314 534 +314 749 +314 750 +315 749 +315 750 +316 415 +316 450 +316 560 +316 584 +316 598 +316 701 +316 737 +316 749 +316 750 +317 598 +317 636 +317 749 +318 577 +318 598 +318 636 +318 672 +318 696 +319 577 +319 636 +320 577 +320 636 +321 577 +321 636 +321 747 +321 749 +321 767 +322 747 +322 762 +322 767 +322 773 +323 747 +323 762 +323 767 +323 773 +324 477 +324 762 +325 477 +325 762 +325 770 +326 477 +326 770 +327 550 +327 574 +327 602 +327 770 +328 550 +328 641 +328 770 +329 574 +329 602 +329 641 +329 689 +329 770 +330 550 +330 574 +330 641 +330 689 +331 449 +331 689 +331 718 +332 449 +332 689 +332 735 +333 689 +333 735 +334 449 +334 689 +334 718 +334 735 +335 449 +335 735 +336 449 +336 691 +336 735 +337 648 +337 691 +337 735 +338 474 +338 505 +338 619 +338 630 +338 648 +338 735 +339 505 +339 691 +339 735 +340 505 +340 619 +340 648 +340 691 +341 425 +341 505 +341 619 +341 630 +342 425 +342 474 +342 505 +342 516 +342 519 +342 630 +342 688 +343 425 +343 516 +343 688 +344 503 +344 516 +344 519 +344 688 +345 436 +345 447 +345 503 +345 596 +345 659 +345 688 +345 717 +346 447 +346 503 +346 688 +347 447 +347 503 +348 436 +348 447 +348 503 +348 596 +348 628 +348 659 +348 717 +349 420 +349 447 +349 448 +349 524 +349 628 +350 420 +350 489 +350 524 +350 628 +351 420 +351 448 +351 489 +351 524 +352 489 +352 524 +353 489 +353 524 +354 489 +355 489 +355 649 +356 464 +356 649 +356 697 +357 464 +357 576 +358 464 +358 576 +358 729 +359 464 +359 576 +359 729 +360 729 +361 493 +361 729 +362 493 +362 729 +363 493 +363 575 +363 639 +363 729 +363 738 +364 493 +364 548 +364 575 +364 729 +364 738 +365 548 +365 639 +365 738 +366 507 +366 548 +366 575 +366 620 +366 639 +367 419 +367 507 +367 597 +367 599 +367 620 +367 665 +367 725 +367 758 +368 507 +368 597 +368 620 +368 758 +369 597 +369 665 +369 758 +370 665 +370 758 +371 665 +371 758 +372 616 +372 665 +372 758 +373 419 +373 616 +373 665 +374 419 +374 616 +375 419 +375 538 +375 600 +375 616 +376 419 +376 538 +376 746 +377 419 +378 419 +378 599 +378 725 +379 725 +379 758 +380 538 +380 600 +380 616 +380 758 +381 538 +381 746 +382 470 +382 746 +383 470 +384 470 +385 470 +386 462 +386 470 +386 632 +386 654 +386 661 +387 654 +388 472 +388 654 +389 472 +390 472 +391 472 +391 590 +392 590 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/instances/36.gr b/src/githubtests/medium_test_set/instances/36.gr new file mode 100644 index 0000000..9354e76 --- /dev/null +++ b/src/githubtests/medium_test_set/instances/36.gr @@ -0,0 +1,81 @@ +p ocr 16 16 80 +1 28 +1 30 +1 32 +2 19 +3 19 +4 25 +4 27 +4 31 +5 21 +5 26 +5 30 +6 17 +6 18 +6 22 +6 23 +6 29 +7 20 +7 24 +7 30 +8 21 +8 24 +8 27 +9 20 +9 25 +9 32 +10 20 +10 26 +10 27 +11 19 +12 24 +12 25 +12 28 +13 19 +14 19 +15 21 +15 28 +15 31 +16 26 +16 31 +16 32 +5 17 +7 17 +8 17 +10 17 +4 18 +9 18 +10 18 +16 18 +3 20 +13 20 +11 21 +14 21 +1 22 +7 22 +9 22 +12 22 +4 23 +8 23 +12 23 +15 23 +3 24 +11 24 +2 25 +3 25 +13 26 +14 26 +3 27 +14 27 +2 28 +11 28 +1 29 +5 29 +15 29 +16 29 +11 30 +13 30 +2 31 +14 31 +2 32 +13 32 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/instances/37.gr b/src/githubtests/medium_test_set/instances/37.gr new file mode 100644 index 0000000..e3b8adb --- /dev/null +++ b/src/githubtests/medium_test_set/instances/37.gr @@ -0,0 +1,193 @@ +p ocr 32 32 192 +1 35 +1 48 +2 48 +2 61 +3 35 +3 59 +4 39 +4 43 +4 58 +4 63 +5 42 +5 48 +6 50 +6 52 +6 57 +6 62 +7 33 +7 44 +7 47 +7 57 +8 38 +8 43 +8 44 +8 54 +9 45 +9 61 +10 35 +10 45 +11 59 +11 61 +12 35 +12 42 +13 49 +13 54 +13 56 +13 57 +14 42 +14 59 +15 43 +15 47 +15 49 +15 51 +16 35 +16 61 +17 36 +17 37 +17 40 +17 53 +17 60 +17 64 +18 41 +18 44 +18 62 +18 63 +19 46 +19 49 +19 52 +19 58 +20 42 +20 61 +22 33 +22 38 +22 51 +22 56 +23 34 +23 46 +23 50 +23 56 +24 47 +24 52 +24 55 +24 63 +25 39 +25 46 +25 51 +25 55 +26 45 +26 48 +27 42 +27 45 +28 34 +28 38 +28 39 +28 41 +29 48 +29 59 +30 34 +30 54 +30 58 +30 62 +31 45 +31 59 +32 33 +32 41 +32 50 +32 55 +2 33 +5 33 +20 33 +9 34 +11 34 +31 34 +21 35 +4 36 +15 36 +19 36 +24 36 +25 36 +6 37 +13 37 +19 37 +23 37 +30 37 +2 38 +11 38 +29 38 +26 39 +29 39 +31 39 +6 40 +7 40 +18 40 +24 40 +32 40 +2 41 +9 41 +26 41 +21 42 +1 43 +3 43 +29 43 +1 44 +2 44 +16 44 +21 45 +14 46 +27 46 +31 46 +1 47 +5 47 +12 47 +21 48 +3 49 +12 49 +14 49 +9 50 +20 50 +27 50 +5 51 +14 51 +29 51 +10 52 +12 52 +27 52 +22 53 +23 53 +25 53 +28 53 +32 53 +3 54 +11 54 +16 54 +5 55 +26 55 +27 55 +11 56 +14 56 +20 56 +12 57 +16 57 +20 57 +3 58 +10 58 +31 58 +21 59 +7 60 +8 60 +13 60 +15 60 +22 60 +21 61 +9 62 +10 62 +16 62 +1 63 +10 63 +26 63 +4 64 +8 64 +18 64 +28 64 +30 64 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/instances/38.gr b/src/githubtests/medium_test_set/instances/38.gr new file mode 100644 index 0000000..28b96aa --- /dev/null +++ b/src/githubtests/medium_test_set/instances/38.gr @@ -0,0 +1,372 @@ +p ocr 178 194 371 +1 359 +2 204 +2 205 +2 209 +2 258 +2 310 +2 356 +3 338 +4 298 +4 330 +5 182 +5 228 +5 314 +6 300 +7 198 +8 235 +9 252 +9 289 +9 348 +10 196 +10 224 +11 230 +11 278 +12 269 +12 365 +13 238 +14 362 +15 334 +16 187 +17 355 +18 200 +19 180 +19 280 +20 305 +20 312 +21 237 +21 336 +22 186 +22 241 +22 276 +22 297 +22 303 +22 329 +22 333 +22 358 +23 239 +23 264 +23 273 +23 316 +23 332 +24 352 +25 285 +25 353 +26 361 +27 247 +28 367 +29 183 +30 342 +30 349 +31 293 +32 197 +32 246 +32 272 +33 283 +33 290 +33 295 +34 181 +34 208 +34 243 +35 184 +35 189 +35 226 +36 233 +37 221 +37 287 +38 214 +39 270 +40 311 +41 279 +41 302 +42 346 +43 254 +43 262 +43 288 +44 217 +45 313 +46 294 +47 363 +48 364 +49 325 +50 190 +50 275 +51 236 +51 253 +51 261 +52 194 +52 341 +53 345 +54 207 +54 370 +55 225 +55 267 +55 366 +56 203 +56 335 +57 351 +58 216 +58 331 +59 229 +59 231 +59 271 +59 326 +60 213 +60 318 +61 227 +61 265 +61 286 +61 328 +62 188 +62 299 +63 255 +63 274 +68 193 +68 244 +68 324 +68 340 +68 354 +68 357 +80 185 +80 218 +80 256 +80 368 +81 292 +85 220 +86 202 +86 284 +87 222 +87 260 +87 291 +90 191 +90 350 +92 206 +92 245 +92 306 +93 315 +93 344 +103 223 +103 242 +103 249 +103 301 +103 307 +103 319 +103 371 +104 201 +104 343 +107 251 +107 322 +108 195 +108 309 +108 369 +114 212 +114 215 +114 327 +118 232 +118 250 +118 277 +118 321 +120 192 +120 282 +120 320 +123 199 +123 263 +127 339 +136 268 +136 317 +138 308 +142 248 +142 257 +144 219 +146 266 +149 210 +149 304 +150 179 +150 259 +150 347 +153 234 +153 240 +153 372 +159 337 +175 281 +178 211 +178 296 +178 323 +178 360 +35 181 +142 181 +6 182 +78 182 +30 183 +124 183 +23 186 +17 187 +88 187 +63 188 +36 189 +51 190 +160 194 +161 194 +128 197 +129 197 +8 198 +79 198 +80 198 +19 200 +57 203 +164 203 +66 205 +67 205 +55 207 +65 209 +39 214 +145 214 +59 216 +45 217 +11 224 +162 225 +143 226 +173 227 +174 227 +77 228 +170 229 +166 231 +167 231 +168 231 +169 231 +37 233 +144 233 +9 235 +81 235 +52 236 +156 236 +157 236 +158 236 +159 236 +22 237 +92 237 +93 237 +14 238 +140 243 +141 243 +33 246 +28 247 +116 247 +117 247 +118 247 +119 247 +120 247 +121 247 +122 247 +44 254 +178 255 +155 261 +148 262 +24 264 +103 264 +56 267 +13 269 +85 269 +40 270 +60 271 +171 271 +172 271 +177 274 +154 275 +12 278 +42 279 +20 280 +34 283 +135 283 +136 283 +137 283 +138 283 +139 283 +26 285 +114 285 +38 287 +10 289 +32 293 +127 293 +47 294 +130 295 +131 295 +132 295 +133 295 +134 295 +100 297 +5 298 +76 298 +7 300 +147 302 +94 303 +95 303 +96 303 +89 305 +64 310 +41 311 +146 311 +21 312 +90 312 +91 312 +46 313 +149 313 +61 318 +50 325 +152 325 +153 325 +165 326 +62 328 +175 328 +176 328 +71 330 +72 330 +73 330 +74 330 +75 330 +102 332 +101 333 +16 334 +4 338 +70 338 +53 341 +31 342 +54 345 +43 346 +82 348 +125 349 +126 349 +58 351 +25 352 +104 352 +105 352 +106 352 +107 352 +108 352 +109 353 +110 353 +111 353 +112 353 +113 353 +18 355 +3 356 +68 356 +69 356 +97 358 +98 358 +99 358 +2 359 +27 361 +115 361 +15 362 +86 362 +87 362 +48 363 +150 363 +151 363 +49 364 +83 365 +84 365 +163 366 +29 367 +123 367 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/instances/39.gr b/src/githubtests/medium_test_set/instances/39.gr new file mode 100644 index 0000000..bbe39fe --- /dev/null +++ b/src/githubtests/medium_test_set/instances/39.gr @@ -0,0 +1,378 @@ +p ocr 186 192 377 +1 301 +2 361 +3 378 +4 211 +4 265 +4 349 +4 375 +5 270 +6 240 +7 257 +8 215 +8 276 +8 309 +8 346 +8 356 +8 360 +9 312 +10 326 +10 338 +11 287 +12 277 +13 208 +13 250 +13 306 +13 323 +13 351 +14 195 +14 316 +14 331 +15 318 +16 285 +17 280 +18 248 +19 279 +19 320 +19 334 +19 350 +20 278 +21 193 +21 205 +21 218 +21 274 +21 300 +21 348 +21 362 +22 281 +23 221 +24 258 +24 372 +25 197 +25 317 +26 341 +27 355 +28 289 +28 344 +29 290 +29 313 +29 328 +29 374 +30 310 +30 325 +31 308 +32 187 +33 201 +33 251 +34 188 +34 210 +35 198 +35 220 +36 190 +36 222 +36 264 +36 284 +36 293 +36 294 +36 369 +37 207 +37 235 +37 363 +37 367 +38 229 +38 267 +39 268 +39 302 +40 206 +40 231 +40 238 +40 256 +40 263 +40 283 +40 333 +40 343 +40 371 +41 303 +42 339 +43 225 +44 262 +45 204 +45 366 +46 259 +47 261 +47 314 +48 223 +48 357 +48 359 +49 232 +49 252 +49 266 +49 269 +50 288 +51 327 +52 209 +52 364 +53 376 +54 199 +55 216 +56 200 +56 253 +56 340 +57 298 +58 254 +59 239 +60 282 +61 226 +64 192 +64 203 +64 227 +64 305 +65 373 +74 202 +74 315 +78 233 +78 242 +80 336 +81 246 +81 377 +82 271 +82 329 +90 319 +92 243 +92 272 +92 286 +92 365 +93 191 +93 196 +93 212 +94 214 +94 260 +95 354 +106 337 +106 353 +106 370 +108 213 +108 219 +108 275 +112 230 +113 307 +115 304 +116 224 +116 244 +116 292 +116 342 +120 194 +121 324 +136 249 +136 273 +136 296 +136 297 +158 217 +158 241 +158 311 +158 347 +164 189 +164 299 +164 358 +164 368 +166 291 +175 255 +175 322 +175 335 +175 345 +177 295 +178 332 +179 237 +179 330 +181 245 +182 247 +183 228 +185 234 +185 236 +185 321 +185 352 +33 187 +35 188 +138 188 +37 190 +22 193 +26 197 +117 197 +36 198 +141 198 +55 199 +179 199 +133 201 +134 201 +135 201 +159 204 +101 205 +147 207 +53 209 +173 209 +174 209 +175 209 +137 210 +63 211 +56 216 +180 216 +181 216 +182 216 +183 216 +184 216 +185 216 +139 220 +140 220 +24 221 +108 221 +109 221 +49 223 +44 225 +158 225 +148 229 +149 229 +153 231 +154 231 +50 232 +156 238 +7 240 +19 248 +14 250 +89 250 +90 250 +34 251 +136 251 +169 252 +170 252 +186 253 +8 257 +64 257 +65 257 +66 257 +67 257 +68 257 +110 258 +47 259 +48 261 +162 261 +163 261 +164 261 +165 261 +166 261 +45 262 +155 263 +5 265 +171 266 +39 267 +150 268 +168 269 +6 270 +72 276 +73 276 +13 277 +21 278 +96 279 +97 279 +98 279 +18 280 +95 280 +23 281 +102 281 +103 281 +104 281 +105 281 +106 281 +107 281 +152 283 +17 285 +94 285 +12 287 +78 287 +79 287 +80 287 +81 287 +82 287 +51 288 +122 289 +123 289 +124 289 +132 290 +142 294 +143 294 +144 294 +145 294 +146 294 +2 301 +58 301 +40 302 +42 303 +32 308 +71 309 +10 312 +129 313 +130 313 +131 313 +161 314 +91 316 +16 318 +92 318 +93 318 +84 323 +85 323 +86 323 +87 323 +88 323 +31 325 +11 326 +52 327 +172 327 +30 328 +15 331 +157 333 +20 334 +75 338 +76 338 +77 338 +43 339 +57 340 +27 341 +118 341 +119 341 +120 341 +121 341 +151 343 +29 344 +9 346 +74 346 +99 350 +100 350 +83 351 +28 355 +69 356 +70 356 +167 359 +3 361 +59 361 +46 366 +160 366 +38 367 +41 371 +25 372 +111 372 +112 372 +113 372 +114 372 +115 372 +116 372 +125 374 +126 374 +127 374 +128 374 +54 376 +176 376 +177 376 +178 376 +4 378 +60 378 +61 378 +62 378 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/instances/4.gr b/src/githubtests/medium_test_set/instances/4.gr new file mode 100644 index 0000000..d22f6bc --- /dev/null +++ b/src/githubtests/medium_test_set/instances/4.gr @@ -0,0 +1,140 @@ +p ocr 26 26 139 +1 32 +1 40 +1 44 +2 31 +2 32 +2 40 +2 44 +3 32 +3 33 +3 44 +4 28 +4 33 +4 36 +4 39 +4 41 +4 46 +4 48 +4 49 +4 50 +4 52 +5 28 +5 30 +5 36 +5 41 +5 43 +5 46 +5 48 +5 49 +5 50 +5 52 +6 27 +6 31 +6 34 +6 45 +7 30 +7 37 +7 38 +7 42 +7 43 +7 51 +8 32 +8 40 +8 44 +9 28 +9 29 +9 33 +9 35 +9 36 +9 39 +9 47 +9 48 +9 49 +9 50 +9 52 +10 41 +10 43 +10 46 +10 48 +10 49 +10 50 +10 52 +11 27 +11 31 +11 34 +11 45 +12 38 +12 42 +13 28 +13 29 +13 33 +13 35 +13 36 +13 39 +13 47 +13 48 +13 49 +13 50 +13 52 +14 30 +14 41 +14 42 +14 43 +14 46 +15 30 +15 41 +15 43 +15 46 +15 48 +15 49 +15 50 +15 52 +16 27 +16 31 +16 34 +16 45 +17 29 +17 32 +17 33 +17 35 +17 39 +17 44 +17 47 +18 32 +18 44 +19 38 +19 42 +20 31 +21 31 +21 32 +21 40 +21 44 +22 30 +22 37 +22 38 +22 42 +22 43 +22 51 +23 32 +23 44 +24 29 +24 33 +24 35 +24 39 +24 47 +24 48 +24 49 +24 50 +24 52 +25 29 +25 32 +25 33 +25 35 +25 39 +25 44 +25 47 +26 31 +26 32 +26 40 +26 44 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/instances/40.gr b/src/githubtests/medium_test_set/instances/40.gr new file mode 100644 index 0000000..dda6534 --- /dev/null +++ b/src/githubtests/medium_test_set/instances/40.gr @@ -0,0 +1,404 @@ +p ocr 198 206 403 +1 259 +1 316 +2 214 +3 354 +4 301 +5 317 +6 272 +6 293 +6 300 +6 318 +6 338 +7 336 +8 211 +8 395 +9 344 +9 346 +10 274 +10 322 +11 282 +11 290 +12 234 +12 350 +13 203 +13 256 +14 245 +15 260 +15 306 +15 394 +16 222 +16 261 +16 280 +16 292 +16 362 +16 400 +17 208 +18 348 +18 355 +19 233 +19 253 +20 330 +20 332 +21 252 +21 284 +21 333 +22 249 +23 262 +24 223 +24 238 +24 310 +24 343 +24 398 +25 265 +25 299 +26 235 +26 363 +26 404 +27 232 +27 254 +27 258 +27 321 +27 358 +27 384 +28 323 +29 366 +30 248 +31 373 +32 298 +33 227 +33 327 +33 342 +34 270 +34 365 +35 331 +36 286 +36 340 +36 377 +37 237 +38 295 +38 328 +39 263 +40 228 +40 329 +41 311 +41 345 +41 382 +42 351 +42 381 +43 230 +44 287 +45 385 +45 403 +46 308 +47 231 +47 269 +47 347 +47 393 +48 388 +49 380 +50 266 +50 283 +51 219 +51 264 +51 324 +51 356 +52 339 +53 215 +53 236 +53 275 +53 305 +53 307 +53 341 +54 303 +55 325 +55 401 +56 207 +56 267 +56 276 +57 392 +58 199 +58 304 +59 209 +59 369 +59 378 +60 268 +60 314 +60 360 +60 361 +61 221 +61 278 +62 383 +63 368 +64 337 +65 402 +66 312 +67 206 +67 213 +67 218 +67 271 +67 285 +68 201 +68 289 +69 349 +70 335 +70 367 +71 217 +72 294 +72 297 +72 396 +73 241 +74 255 +74 389 +75 279 +75 288 +75 399 +76 212 +76 246 +76 364 +77 247 +77 313 +78 226 +78 257 +80 202 +82 353 +91 224 +91 244 +92 326 +102 229 +102 357 +114 334 +115 370 +125 296 +126 359 +126 375 +127 225 +127 242 +132 391 +133 376 +134 387 +137 320 +139 309 +143 302 +144 205 +145 315 +154 204 +154 319 +154 379 +157 240 +157 243 +157 273 +159 216 +170 239 +170 390 +172 251 +174 277 +174 281 +175 352 +177 374 +177 397 +179 200 +179 372 +179 386 +180 210 +180 291 +184 250 +184 371 +197 220 +69 201 +179 201 +14 203 +95 203 +57 207 +18 208 +9 211 +88 211 +77 212 +68 213 +176 213 +177 213 +178 213 +3 214 +146 215 +147 215 +148 215 +149 215 +72 217 +163 221 +164 221 +165 221 +166 221 +117 223 +118 223 +198 226 +44 230 +48 231 +28 232 +107 233 +108 233 +109 233 +110 233 +13 234 +120 235 +38 237 +119 238 +74 241 +15 245 +189 246 +190 246 +191 246 +192 246 +193 246 +194 246 +78 247 +197 247 +31 248 +127 248 +23 249 +114 249 +115 249 +20 253 +185 255 +94 256 +2 259 +97 260 +98 260 +99 260 +100 260 +101 260 +103 261 +24 262 +116 262 +40 263 +52 264 +144 264 +145 264 +51 266 +141 266 +142 266 +143 266 +129 270 +130 270 +131 270 +11 274 +158 276 +62 278 +167 278 +188 279 +17 280 +106 280 +12 282 +91 282 +92 282 +140 283 +113 284 +45 287 +133 287 +134 287 +104 292 +105 292 +7 293 +73 294 +39 295 +33 298 +26 299 +83 300 +5 301 +82 301 +55 303 +154 303 +59 304 +159 304 +160 304 +96 306 +54 307 +47 308 +135 308 +136 308 +137 308 +67 312 +196 313 +162 314 +6 317 +84 318 +85 318 +86 318 +87 318 +122 321 +29 323 +155 325 +34 327 +41 329 +132 329 +111 330 +36 331 +21 332 +112 332 +22 333 +181 335 +182 335 +8 336 +65 337 +171 337 +53 339 +150 341 +151 341 +152 341 +153 341 +128 342 +10 344 +90 344 +42 345 +89 346 +19 348 +70 349 +180 349 +93 350 +4 354 +79 354 +80 354 +81 354 +121 358 +61 361 +195 364 +35 365 +30 366 +125 366 +126 366 +71 367 +183 367 +184 367 +64 368 +168 368 +169 368 +170 368 +32 373 +37 377 +60 378 +161 378 +50 380 +139 380 +43 381 +63 383 +123 384 +124 384 +49 388 +75 389 +186 389 +187 389 +58 392 +138 393 +16 394 +102 394 +25 398 +76 399 +56 401 +156 401 +157 401 +66 402 +172 402 +173 402 +174 402 +175 402 +46 403 +27 404 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/instances/41.gr b/src/githubtests/medium_test_set/instances/41.gr new file mode 100644 index 0000000..4cbf4c9 --- /dev/null +++ b/src/githubtests/medium_test_set/instances/41.gr @@ -0,0 +1,190 @@ +p ocr 189 24 189 +1 195 +2 197 +3 195 +4 195 +5 197 +6 197 +7 197 +8 195 +9 199 +10 195 +11 195 +12 197 +13 199 +14 197 +15 199 +16 195 +17 195 +18 197 +19 195 +20 197 +21 193 +22 193 +23 198 +24 193 +25 198 +26 193 +27 193 +28 193 +29 198 +30 196 +31 193 +32 193 +33 193 +34 196 +35 196 +36 198 +37 196 +38 198 +39 193 +40 198 +41 193 +42 198 +43 196 +44 193 +45 202 +46 212 +47 212 +48 202 +49 202 +50 202 +51 212 +52 209 +53 202 +54 212 +55 209 +56 202 +57 212 +58 212 +59 209 +60 212 +61 212 +62 209 +63 212 +64 202 +65 212 +66 209 +67 212 +68 201 +69 201 +70 201 +71 208 +72 207 +73 201 +74 207 +75 207 +76 201 +77 201 +78 201 +79 201 +80 201 +81 208 +82 207 +83 208 +84 208 +85 201 +86 201 +87 208 +88 208 +89 207 +90 208 +91 208 +92 208 +93 208 +94 207 +95 208 +96 206 +97 213 +98 213 +99 213 +100 213 +101 213 +102 213 +103 206 +104 206 +105 206 +106 204 +107 204 +108 206 +109 204 +110 206 +111 213 +112 213 +113 206 +114 206 +115 210 +116 203 +117 200 +118 210 +119 210 +120 210 +121 200 +122 200 +123 203 +124 203 +125 200 +126 203 +127 200 +128 203 +129 210 +130 200 +131 203 +132 200 +133 210 +134 203 +135 203 +136 203 +137 203 +138 210 +139 210 +140 200 +141 210 +142 203 +143 203 +144 210 +145 210 +146 191 +147 194 +148 194 +149 191 +150 194 +151 205 +152 194 +153 205 +154 205 +155 194 +156 205 +157 194 +158 205 +159 205 +160 205 +161 194 +162 205 +163 205 +164 194 +165 205 +166 194 +167 205 +168 194 +169 191 +170 194 +171 194 +172 191 +173 192 +174 211 +175 192 +176 192 +177 192 +178 190 +179 192 +180 190 +181 192 +182 192 +183 192 +184 192 +185 192 +186 211 +187 190 +188 192 +189 211 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/instances/42.gr b/src/githubtests/medium_test_set/instances/42.gr new file mode 100644 index 0000000..dd718aa --- /dev/null +++ b/src/githubtests/medium_test_set/instances/42.gr @@ -0,0 +1,197 @@ +p ocr 196 42 196 +1 206 +2 209 +3 227 +4 234 +5 203 +6 227 +7 234 +8 227 +9 209 +10 203 +11 209 +12 232 +13 203 +14 227 +15 227 +16 227 +17 232 +18 232 +19 203 +20 206 +21 206 +22 234 +23 222 +24 214 +25 236 +26 217 +27 222 +28 222 +29 211 +30 222 +31 214 +32 214 +33 211 +34 211 +35 222 +36 222 +37 223 +38 217 +39 217 +40 214 +41 223 +42 222 +43 211 +44 214 +45 211 +46 211 +47 214 +48 236 +49 236 +50 211 +51 223 +52 211 +53 214 +54 223 +55 208 +56 202 +57 200 +58 208 +59 200 +60 208 +61 197 +62 200 +63 225 +64 225 +65 202 +66 231 +67 202 +68 197 +69 225 +70 208 +71 231 +72 197 +73 197 +74 202 +75 208 +76 231 +77 197 +78 200 +79 202 +80 225 +81 225 +82 225 +83 197 +84 231 +85 208 +86 208 +87 199 +88 235 +89 238 +90 224 +91 233 +92 205 +93 224 +94 205 +95 238 +96 199 +97 199 +98 199 +99 205 +100 233 +101 224 +102 224 +103 238 +104 238 +105 224 +106 233 +107 235 +108 224 +109 238 +110 205 +111 224 +112 235 +113 224 +114 213 +115 218 +116 204 +117 204 +118 213 +119 226 +120 204 +121 226 +122 229 +123 213 +124 226 +125 198 +126 229 +127 213 +128 226 +129 213 +130 213 +131 204 +132 198 +133 218 +134 218 +135 218 +136 213 +137 218 +138 229 +139 226 +140 213 +141 218 +142 204 +143 226 +144 198 +145 220 +146 221 +147 220 +148 220 +149 230 +150 215 +151 221 +152 221 +153 216 +154 215 +155 215 +156 237 +157 216 +158 221 +159 216 +160 220 +161 237 +162 230 +163 216 +164 230 +165 237 +166 221 +167 237 +168 221 +169 215 +170 215 +171 212 +172 207 +173 210 +174 207 +175 212 +176 201 +177 207 +178 212 +179 212 +180 219 +181 219 +182 210 +183 210 +184 219 +185 212 +186 207 +187 207 +188 228 +189 201 +190 210 +191 210 +192 219 +193 207 +194 228 +195 201 +196 228 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/instances/43.gr b/src/githubtests/medium_test_set/instances/43.gr new file mode 100644 index 0000000..4f09954 --- /dev/null +++ b/src/githubtests/medium_test_set/instances/43.gr @@ -0,0 +1,285 @@ +p ocr 284 48 284 +1 322 +2 290 +3 297 +4 319 +5 290 +6 290 +7 322 +8 323 +9 319 +10 312 +11 297 +12 290 +13 290 +14 290 +15 297 +16 322 +17 290 +18 297 +19 323 +20 297 +21 312 +22 319 +23 312 +24 297 +25 297 +26 323 +27 322 +28 295 +29 318 +30 303 +31 306 +32 306 +33 318 +34 306 +35 295 +36 296 +37 303 +38 295 +39 295 +40 303 +41 306 +42 296 +43 318 +44 306 +45 318 +46 296 +47 318 +48 295 +49 306 +50 318 +51 318 +52 318 +53 287 +54 318 +55 306 +56 303 +57 287 +58 303 +59 287 +60 295 +61 296 +62 294 +63 326 +64 286 +65 328 +66 286 +67 294 +68 294 +69 286 +70 293 +71 328 +72 288 +73 288 +74 286 +75 288 +76 326 +77 328 +78 294 +79 286 +80 286 +81 293 +82 326 +83 294 +84 288 +85 326 +86 326 +87 294 +88 288 +89 286 +90 288 +91 328 +92 293 +93 294 +94 286 +95 294 +96 286 +97 285 +98 332 +99 302 +100 285 +101 292 +102 329 +103 300 +104 292 +105 302 +106 285 +107 332 +108 302 +109 300 +110 300 +111 292 +112 329 +113 300 +114 285 +115 285 +116 332 +117 292 +118 285 +119 302 +120 292 +121 300 +122 302 +123 302 +124 292 +125 300 +126 329 +127 329 +128 302 +129 302 +130 300 +131 332 +132 285 +133 285 +134 332 +135 329 +136 329 +137 302 +138 310 +139 309 +140 309 +141 310 +142 309 +143 310 +144 305 +145 309 +146 308 +147 309 +148 305 +149 316 +150 308 +151 316 +152 308 +153 305 +154 310 +155 310 +156 324 +157 309 +158 305 +159 305 +160 324 +161 305 +162 305 +163 324 +164 308 +165 316 +166 310 +167 310 +168 309 +169 310 +170 310 +171 305 +172 308 +173 331 +174 301 +175 301 +176 311 +177 311 +178 320 +179 289 +180 331 +181 298 +182 289 +183 301 +184 311 +185 298 +186 311 +187 311 +188 301 +189 301 +190 331 +191 320 +192 331 +193 320 +194 301 +195 289 +196 311 +197 311 +198 298 +199 301 +200 289 +201 289 +202 331 +203 301 +204 289 +205 331 +206 311 +207 311 +208 321 +209 307 +210 307 +211 315 +212 321 +213 313 +214 291 +215 315 +216 307 +217 313 +218 307 +219 325 +220 325 +221 291 +222 325 +223 291 +224 321 +225 321 +226 325 +227 291 +228 307 +229 325 +230 307 +231 321 +232 325 +233 315 +234 321 +235 291 +236 321 +237 315 +238 307 +239 321 +240 321 +241 325 +242 291 +243 325 +244 307 +245 313 +246 291 +247 299 +248 317 +249 330 +250 299 +251 299 +252 317 +253 314 +254 304 +255 330 +256 304 +257 314 +258 304 +259 317 +260 299 +261 317 +262 304 +263 327 +264 330 +265 304 +266 317 +267 314 +268 317 +269 330 +270 299 +271 304 +272 330 +273 299 +274 299 +275 304 +276 327 +277 304 +278 330 +279 299 +280 317 +281 299 +282 304 +283 317 +284 327 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/instances/44.gr b/src/githubtests/medium_test_set/instances/44.gr new file mode 100644 index 0000000..fa811ba --- /dev/null +++ b/src/githubtests/medium_test_set/instances/44.gr @@ -0,0 +1,1650 @@ +p ocr 855 221 1649 +1 880 +1 1034 +2 1020 +3 981 +3 1048 +3 1052 +4 1045 +5 911 +5 998 +6 891 +9 911 +9 981 +10 981 +11 998 +14 868 +14 1052 +14 1063 +15 884 +15 940 +15 948 +16 868 +16 890 +16 926 +17 868 +17 926 +17 948 +17 1063 +18 868 +18 880 +18 1031 +19 1059 +20 906 +20 1031 +21 880 +21 950 +21 998 +21 1008 +22 911 +23 998 +24 1047 +24 1063 +25 940 +25 998 +26 906 +26 1034 +26 1055 +27 884 +27 1008 +27 1034 +28 868 +28 1047 +29 868 +29 1031 +29 1045 +29 1055 +30 880 +31 890 +31 1047 +32 868 +32 891 +32 998 +32 1031 +32 1047 +32 1063 +33 880 +34 880 +34 940 +34 950 +34 981 +35 890 +36 1047 +37 1008 +38 950 +38 1047 +39 1048 +40 950 +41 926 +41 1008 +41 1045 +41 1047 +42 911 +42 1063 +43 1008 +43 1048 +45 926 +45 1034 +45 1063 +46 1045 +46 1048 +46 1055 +47 1031 +49 891 +49 1052 +50 940 +51 1063 +52 880 +52 950 +52 1020 +52 1063 +53 891 +53 906 +53 1047 +54 911 +54 1063 +55 911 +55 998 +56 1020 +56 1031 +56 1048 +57 1048 +58 891 +60 950 +60 1034 +61 998 +62 911 +63 981 +63 1045 +63 1052 +64 868 +64 1045 +65 1020 +65 1052 +65 1055 +67 880 +68 891 +68 998 +68 1008 +68 1034 +69 1034 +69 1055 +69 1063 +70 981 +70 1008 +71 1008 +71 1045 +71 1048 +72 880 +72 1034 +72 1047 +73 890 +73 906 +73 940 +73 998 +73 1045 +73 1048 +73 1055 +74 926 +76 868 +76 880 +76 1047 +77 998 +78 1047 +80 906 +80 948 +81 880 +81 906 +81 950 +81 1048 +81 1059 +82 1048 +82 1055 +82 1063 +83 868 +83 1034 +83 1047 +84 890 +84 998 +85 880 +85 911 +85 1034 +87 940 +87 950 +87 1034 +87 1052 +88 1008 +89 948 +90 884 +90 1034 +90 1059 +91 915 +91 987 +91 1073 +92 876 +92 915 +92 946 +92 959 +93 898 +93 915 +93 956 +93 987 +93 1066 +94 898 +94 959 +94 1002 +95 958 +95 961 +95 983 +95 987 +95 1002 +95 1026 +95 1066 +96 959 +96 961 +96 977 +96 1026 +97 898 +97 946 +97 953 +97 958 +97 959 +97 961 +97 1033 +98 1033 +99 857 +99 937 +99 946 +99 949 +99 992 +99 1002 +100 1002 +100 1026 +101 898 +101 977 +101 987 +101 1018 +102 945 +102 949 +102 959 +102 987 +103 857 +103 945 +103 946 +103 959 +103 961 +104 983 +104 1066 +105 937 +105 949 +105 958 +105 1018 +105 1026 +106 857 +106 876 +106 937 +107 958 +107 987 +107 1002 +107 1026 +108 898 +108 937 +108 961 +108 1033 +109 876 +109 937 +109 983 +110 876 +110 898 +110 983 +110 1002 +111 937 +111 977 +111 987 +111 992 +111 1053 +111 1066 +112 946 +112 977 +112 987 +112 992 +112 1066 +112 1073 +113 876 +113 945 +113 949 +113 961 +113 1026 +113 1033 +113 1053 +113 1066 +114 876 +114 961 +114 983 +114 992 +114 1018 +114 1033 +115 977 +115 1002 +116 977 +116 1073 +117 876 +117 983 +117 1026 +117 1066 +118 953 +118 958 +118 959 +118 1066 +118 1073 +119 857 +119 898 +119 946 +119 1002 +120 977 +120 992 +120 1002 +120 1033 +121 945 +121 1002 +121 1026 +121 1066 +122 956 +122 959 +122 1053 +122 1073 +123 898 +123 937 +124 876 +124 946 +124 949 +124 1026 +125 876 +125 945 +125 946 +125 959 +125 987 +126 876 +126 1002 +127 898 +128 857 +128 876 +128 959 +128 987 +128 1018 +128 1033 +129 961 +129 1033 +129 1066 +130 956 +130 977 +130 1066 +131 857 +131 1026 +131 1033 +132 937 +132 949 +132 1033 +132 1066 +133 992 +133 1018 +133 1033 +133 1053 +134 857 +134 876 +134 898 +134 949 +134 958 +135 987 +135 992 +135 1002 +135 1018 +135 1026 +136 937 +136 958 +136 992 +137 953 +137 958 +137 961 +139 954 +140 960 +141 925 +143 905 +143 1037 +145 1036 +147 887 +147 932 +147 1004 +148 929 +148 980 +148 1037 +148 1049 +149 929 +149 960 +150 932 +150 1036 +151 932 +151 980 +151 1013 +152 925 +152 1013 +152 1021 +152 1036 +153 909 +153 923 +153 938 +154 883 +154 887 +154 929 +154 975 +155 938 +155 980 +155 1035 +156 975 +157 883 +157 1049 +158 877 +158 923 +158 994 +159 980 +159 1036 +160 954 +161 905 +161 932 +161 960 +161 1004 +162 877 +162 1037 +164 1036 +165 883 +165 960 +166 923 +166 1049 +167 925 +167 1013 +168 905 +168 1013 +168 1058 +169 938 +169 1049 +171 887 +171 905 +171 923 +171 980 +171 1010 +172 1010 +172 1013 +173 887 +175 887 +176 932 +177 938 +177 994 +178 925 +178 1035 +179 929 +179 932 +179 1036 +180 877 +181 1010 +181 1013 +181 1049 +182 905 +182 1035 +182 1049 +183 923 +183 1010 +183 1013 +184 1013 +186 929 +186 938 +186 1025 +188 938 +188 954 +188 1049 +189 1049 +190 938 +190 1004 +191 877 +191 1037 +193 883 +193 905 +194 905 +194 1025 +195 975 +195 1010 +196 877 +196 905 +196 909 +196 994 +197 1036 +199 1037 +200 909 +201 1004 +201 1037 +202 923 +202 1004 +203 887 +203 980 +203 1010 +203 1037 +204 929 +205 883 +206 877 +206 932 +207 905 +208 925 +208 1010 +208 1058 +209 960 +210 1010 +210 1037 +211 1021 +211 1049 +212 932 +212 1004 +213 887 +213 1004 +213 1049 +214 980 +216 905 +216 994 +216 1058 +217 887 +217 1004 +218 938 +218 994 +219 887 +219 1035 +222 905 +222 925 +222 1035 +223 1013 +223 1037 +225 877 +225 929 +225 932 +225 980 +226 1004 +226 1010 +226 1025 +226 1035 +226 1036 +227 960 +228 975 +229 980 +229 1013 +229 1035 +229 1058 +231 929 +232 929 +232 932 +234 938 +234 1004 +235 1037 +237 877 +237 1021 +238 975 +239 887 +240 1021 +240 1037 +242 994 +243 923 +243 960 +246 994 +247 980 +247 1021 +247 1058 +248 887 +249 932 +249 994 +251 909 +253 862 +253 1016 +253 1040 +254 902 +254 971 +254 1012 +254 1069 +255 899 +255 901 +255 943 +255 1012 +255 1029 +255 1051 +256 901 +256 902 +256 1040 +256 1069 +256 1075 +257 862 +257 869 +257 894 +257 910 +257 1016 +258 933 +258 943 +258 989 +258 1040 +259 901 +259 943 +259 1051 +260 894 +261 899 +261 971 +262 933 +262 966 +262 1038 +263 899 +263 902 +263 966 +263 1038 +264 859 +264 901 +264 902 +264 933 +264 943 +264 1029 +265 859 +265 894 +265 902 +265 971 +266 901 +266 902 +266 971 +266 1038 +267 902 +267 963 +267 1016 +268 859 +268 901 +268 971 +269 1029 +269 1067 +270 859 +270 862 +270 864 +270 1016 +270 1040 +270 1067 +271 859 +271 933 +271 943 +271 971 +271 1016 +272 966 +273 943 +273 989 +273 1040 +274 862 +274 933 +274 971 +274 1012 +274 1038 +274 1040 +274 1067 +276 894 +276 899 +276 910 +276 989 +276 1040 +277 894 +277 943 +277 971 +277 1075 +278 862 +278 902 +278 910 +278 1012 +278 1029 +278 1067 +279 894 +279 899 +279 901 +279 1016 +279 1038 +280 899 +280 933 +281 859 +281 901 +281 902 +281 943 +281 1016 +282 864 +282 869 +282 971 +282 1012 +282 1016 +282 1069 +283 869 +283 902 +283 966 +284 862 +284 899 +284 963 +284 966 +284 1038 +285 864 +285 1012 +285 1067 +285 1075 +286 859 +286 862 +286 902 +286 971 +286 989 +286 1038 +287 966 +287 1038 +288 859 +288 862 +288 1012 +288 1038 +289 859 +289 894 +289 943 +289 1040 +289 1067 +290 859 +290 943 +290 1051 +291 899 +291 943 +291 1016 +292 899 +292 933 +293 859 +293 901 +293 933 +293 963 +293 971 +293 1012 +294 892 +294 935 +295 951 +295 1009 +296 888 +297 888 +297 903 +297 1028 +298 1028 +298 1046 +299 1039 +300 957 +301 1039 +302 888 +304 1065 +305 903 +305 969 +306 863 +307 863 +309 917 +309 1046 +311 903 +311 1005 +311 1028 +312 969 +314 917 +314 1039 +315 900 +315 1044 +316 1028 +317 863 +318 892 +319 863 +319 1044 +320 951 +321 888 +321 1028 +322 863 +323 892 +323 903 +323 1028 +325 951 +325 969 +325 1065 +326 888 +327 1046 +330 1039 +332 917 +333 1005 +334 1005 +337 888 +337 1009 +338 1028 +338 1046 +339 969 +339 1028 +339 1046 +342 951 +343 1039 +346 951 +347 1028 +348 1009 +348 1039 +349 935 +351 957 +352 1039 +353 1009 +354 903 +355 888 +356 1046 +357 900 +357 903 +358 888 +359 1046 +361 1039 +363 1039 +363 1044 +364 863 +364 969 +365 969 +366 1046 +367 863 +367 888 +368 969 +369 1039 +370 903 +371 935 +373 969 +373 1046 +374 1009 +374 1028 +375 900 +375 969 +376 863 +376 888 +376 903 +377 951 +377 1065 +378 888 +378 957 +379 903 +379 1065 +380 957 +380 1065 +382 917 +382 1009 +383 1005 +383 1009 +383 1046 +386 863 +386 1065 +387 1039 +388 1005 +388 1028 +388 1044 +389 935 +389 1028 +390 935 +391 903 +392 917 +392 951 +393 888 +393 903 +395 917 +395 1005 +396 903 +397 999 +397 1030 +398 973 +400 913 +400 1041 +400 1042 +401 871 +401 922 +401 999 +402 939 +403 973 +403 1030 +404 1014 +405 999 +406 955 +406 1050 +407 952 +407 955 +407 1014 +408 871 +408 1001 +411 973 +413 1001 +414 999 +414 1007 +415 973 +415 978 +415 1050 +416 1007 +417 999 +418 922 +419 955 +419 1030 +420 955 +421 978 +421 1041 +421 1050 +422 1050 +423 952 +423 1001 +423 1041 +424 997 +426 871 +426 952 +427 955 +428 1030 +428 1076 +429 871 +429 939 +429 1042 +430 1007 +431 913 +431 955 +431 978 +431 1050 +432 1041 +433 1030 +434 913 +434 955 +435 1001 +436 997 +437 871 +438 871 +438 955 +438 1001 +438 1030 +439 871 +439 978 +440 858 +440 978 +441 913 +442 913 +442 997 +442 1042 +443 922 +443 997 +444 871 +444 999 +445 999 +445 1007 +445 1042 +446 922 +446 939 +446 997 +447 858 +447 1030 +447 1041 +448 952 +448 978 +448 1042 +449 858 +449 997 +450 952 +450 997 +451 952 +452 913 +452 939 +452 952 +452 1042 +452 1050 +456 922 +456 952 +457 871 +457 955 +458 858 +458 1042 +459 913 +459 955 +460 913 +460 999 +460 1001 +460 1076 +461 922 +461 997 +461 1001 +461 1030 +462 871 +462 913 +463 939 +463 952 +463 1030 +463 1041 +464 858 +464 871 +464 1042 +465 913 +467 999 +467 1041 +468 1050 +468 1076 +469 973 +469 1001 +470 1001 +470 1050 +472 858 +472 871 +472 973 +472 978 +473 858 +473 922 +474 1014 +475 952 +475 999 +476 913 +476 1041 +476 1042 +477 922 +477 1007 +478 913 +478 922 +478 952 +478 1030 +479 955 +479 1007 +479 1050 +480 978 +480 1001 +481 990 +481 1032 +481 1070 +483 866 +484 879 +484 991 +485 927 +485 1070 +487 927 +487 993 +488 990 +491 893 +491 990 +492 879 +492 1070 +493 893 +493 927 +493 1032 +493 1070 +494 893 +494 991 +494 1022 +495 991 +495 1022 +496 866 +497 927 +497 1070 +499 879 +499 927 +499 993 +500 970 +500 1032 +501 872 +501 893 +501 924 +501 970 +502 991 +502 1070 +503 1032 +505 927 +506 927 +506 991 +506 1043 +507 991 +510 866 +510 927 +511 1022 +511 1070 +512 927 +512 1070 +513 927 +514 879 +516 879 +516 893 +516 924 +517 993 +517 1032 +518 893 +518 1022 +519 993 +519 1070 +520 991 +520 1032 +521 927 +521 1070 +522 872 +522 970 +522 1070 +523 993 +524 924 +524 1043 +525 990 +525 993 +526 1070 +527 927 +527 990 +527 991 +529 924 +529 1043 +530 872 +530 970 +531 993 +531 1032 +532 919 +532 941 +532 979 +532 1056 +533 1057 +533 1068 +534 919 +534 984 +534 996 +534 1019 +534 1023 +534 1068 +535 865 +535 882 +535 941 +535 1000 +535 1003 +536 865 +536 996 +537 979 +537 984 +537 996 +537 1019 +538 878 +538 897 +538 941 +538 979 +538 1054 +539 1057 +539 1068 +540 897 +540 1019 +541 878 +541 912 +541 979 +541 1003 +541 1019 +542 996 +542 1019 +542 1056 +543 856 +543 865 +543 912 +543 979 +543 996 +543 1003 +543 1019 +543 1056 +544 865 +544 878 +544 919 +544 979 +544 1003 +544 1019 +544 1023 +544 1068 +545 878 +545 1003 +545 1017 +545 1019 +545 1057 +546 897 +546 996 +546 1057 +547 1003 +547 1023 +548 865 +548 897 +548 1023 +548 1057 +549 856 +549 865 +549 897 +549 979 +549 1003 +549 1056 +550 912 +550 1000 +550 1017 +551 856 +551 918 +551 1019 +551 1023 +551 1057 +552 918 +552 1003 +553 919 +553 947 +554 878 +554 996 +554 1054 +555 912 +555 1003 +555 1023 +556 878 +556 979 +556 1056 +557 941 +557 984 +557 1056 +557 1057 +558 941 +558 947 +558 996 +558 1000 +559 1056 +560 878 +560 912 +560 1057 +561 882 +561 919 +561 979 +561 1000 +561 1054 +562 918 +562 996 +562 1000 +562 1003 +563 918 +563 1056 +564 865 +564 912 +564 979 +565 941 +565 996 +565 1000 +565 1023 +566 865 +566 941 +567 878 +567 919 +567 947 +567 1023 +567 1056 +568 856 +568 865 +568 918 +568 919 +568 941 +568 1000 +568 1003 +569 856 +569 865 +569 979 +569 1056 +570 865 +570 882 +570 1017 +570 1057 +572 882 +572 912 +572 919 +572 941 +572 1019 +572 1023 +572 1054 +573 897 +573 912 +573 918 +573 979 +573 1003 +573 1019 +574 886 +574 1024 +575 861 +575 875 +575 886 +575 889 +575 962 +576 886 +576 1071 +577 875 +577 974 +577 1006 +577 1015 +578 870 +578 889 +578 1015 +578 1027 +578 1071 +580 870 +580 889 +580 967 +580 1006 +582 962 +582 1024 +583 1024 +583 1071 +585 861 +585 886 +585 962 +585 974 +585 1015 +586 861 +587 870 +587 889 +587 962 +587 976 +587 1027 +587 1071 +588 1015 +589 930 +590 967 +590 1027 +591 967 +591 974 +591 1015 +592 930 +592 974 +592 1006 +592 1015 +593 875 +593 962 +593 1027 +594 870 +594 908 +594 962 +596 1024 +597 930 +597 1015 +597 1071 +598 974 +598 1006 +598 1024 +599 875 +599 889 +599 908 +600 886 +600 908 +600 930 +600 967 +600 1006 +601 1006 +603 1006 +603 1024 +603 1062 +604 886 +604 974 +604 1027 +605 889 +606 870 +607 930 +607 967 +607 1006 +607 1027 +608 889 +608 967 +609 908 +610 908 +611 861 +611 886 +612 875 +612 886 +612 889 +612 974 +613 870 +613 908 +613 930 +613 1006 +614 930 +614 967 +615 886 +615 889 +615 967 +617 870 +617 875 +617 886 +617 976 +617 1015 +617 1071 +618 889 +618 1006 +618 1027 +619 908 +619 1027 +620 1006 +621 976 +622 962 +622 1015 +622 1071 +623 861 +623 908 +624 875 +626 1062 +626 1071 +627 1006 +627 1027 +627 1071 +628 861 +628 886 +629 1071 +630 875 +631 875 +631 967 +631 976 +632 861 +632 870 +633 1062 +634 870 +634 875 +634 967 +634 974 +635 861 +635 875 +635 886 +635 967 +636 861 +636 889 +636 930 +636 962 +636 1015 +636 1027 +636 1071 +637 965 +638 895 +638 986 +639 936 +639 968 +640 860 +640 985 +641 896 +641 942 +641 986 +642 931 +642 934 +642 964 +642 986 +643 914 +643 936 +644 965 +644 968 +645 920 +646 914 +646 920 +646 944 +646 985 +647 867 +647 895 +648 920 +648 942 +649 931 +649 936 +649 986 +650 885 +650 934 +651 867 +651 944 +652 931 +653 986 +654 885 +654 920 +654 934 +654 965 +655 942 +656 964 +656 968 +657 942 +658 881 +659 896 +660 936 +661 860 +661 896 +661 968 +662 934 +662 968 +664 896 +664 986 +665 942 +665 944 +666 895 +666 934 +666 964 +666 986 +667 985 +667 1060 +668 885 +668 936 +669 896 +670 986 +671 896 +671 914 +672 895 +672 942 +672 944 +673 881 +673 964 +674 914 +674 942 +675 896 +678 881 +679 985 +680 944 +683 931 +684 965 +684 1060 +685 964 +685 986 +686 942 +686 986 +687 885 +687 931 +688 985 +690 936 +691 936 +691 968 +693 860 +694 942 +695 896 +697 860 +699 964 +700 914 +700 944 +700 964 +701 936 +701 944 +701 986 +702 985 +702 1060 +703 968 +704 920 +704 965 +704 968 +704 985 +705 920 +706 896 +706 944 +708 986 +709 964 +710 895 +710 936 +712 964 +714 881 +714 896 +714 942 +715 867 +718 931 +718 965 +719 896 +719 931 +720 936 +720 964 +722 931 +722 944 +724 881 +724 895 +724 896 +725 934 +725 936 +726 968 +727 1064 +728 995 +729 995 +730 972 +731 904 +731 1011 +733 928 +735 1064 +736 874 +737 928 +737 982 +738 972 +738 1064 +739 1061 +741 988 +742 904 +744 988 +745 982 +746 904 +746 988 +750 907 +750 982 +753 874 +753 916 +754 1072 +756 1064 +757 907 +757 1011 +758 1061 +759 1061 +761 988 +762 988 +764 928 +764 988 +765 874 +765 972 +770 873 +774 972 +774 1061 +776 921 +776 928 +777 921 +778 928 +778 982 +778 995 +779 972 +781 1061 +782 874 +782 1072 +783 874 +784 873 +784 988 +786 904 +786 928 +786 972 +786 1061 +787 1061 +789 874 +790 972 +791 928 +792 873 +793 1074 +795 995 +797 873 +797 972 +797 1011 +799 921 +800 873 +800 1061 +802 1064 +805 873 +806 928 +807 907 +807 916 +807 1011 +808 874 +809 904 +809 972 +810 995 +811 1011 +815 904 +815 988 +818 904 +819 1011 +820 904 +820 988 +820 1061 +821 988 +822 982 +822 1072 +823 972 +824 982 +824 995 +825 1064 +829 972 +830 995 +830 1011 +832 904 +832 1011 +833 916 +835 995 +836 1074 +837 982 +837 1064 +840 995 +847 904 +847 1061 +848 972 +848 995 +849 982 +851 1011 +851 1064 +851 1074 +854 873 +855 1064 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/instances/45.gr b/src/githubtests/medium_test_set/instances/45.gr new file mode 100644 index 0000000..a4c984a --- /dev/null +++ b/src/githubtests/medium_test_set/instances/45.gr @@ -0,0 +1,969 @@ +p ocr 462 241 968 +1 569 +1 576 +2 472 +2 482 +2 538 +2 635 +3 474 +3 487 +3 590 +3 635 +4 474 +4 590 +4 635 +5 506 +5 595 +5 597 +5 638 +6 495 +6 506 +6 630 +6 638 +6 648 +7 595 +7 616 +7 630 +7 635 +8 472 +8 474 +8 482 +9 474 +9 487 +9 560 +9 590 +10 474 +10 495 +10 555 +10 576 +10 648 +11 616 +12 482 +12 569 +12 576 +12 638 +12 703 +13 487 +13 555 +13 597 +14 495 +14 648 +14 702 +14 703 +15 506 +15 538 +15 555 +15 569 +15 638 +15 648 +16 560 +16 616 +16 630 +16 655 +16 702 +16 703 +17 538 +17 560 +17 638 +18 595 +18 597 +18 630 +19 569 +19 576 +19 630 +20 472 +20 555 +20 569 +20 616 +20 655 +21 482 +21 495 +21 576 +21 616 +21 655 +21 702 +22 560 +22 648 +22 655 +22 703 +23 511 +23 561 +23 567 +23 699 +24 511 +24 594 +24 608 +24 641 +25 500 +25 561 +25 565 +25 567 +25 578 +25 591 +25 604 +25 641 +25 699 +26 591 +26 594 +27 565 +27 594 +28 565 +28 571 +28 604 +28 642 +28 699 +29 463 +29 567 +29 591 +29 642 +29 697 +30 463 +30 500 +30 565 +30 566 +30 608 +30 699 +31 463 +31 571 +31 578 +31 594 +31 604 +31 697 +32 463 +32 500 +32 571 +32 591 +32 641 +32 690 +33 500 +33 566 +33 567 +33 608 +33 642 +33 690 +34 561 +34 608 +34 641 +34 642 +34 690 +34 697 +35 463 +35 511 +35 561 +35 566 +36 561 +36 565 +36 604 +36 690 +37 500 +37 567 +37 578 +37 591 +37 699 +39 529 +39 549 +39 656 +39 684 +40 600 +40 628 +41 516 +41 600 +41 643 +42 529 +42 540 +42 628 +43 529 +45 515 +45 629 +46 517 +46 540 +46 552 +46 601 +47 577 +48 548 +51 549 +52 629 +53 684 +54 553 +55 552 +55 574 +55 596 +56 540 +56 574 +57 501 +58 600 +59 515 +59 529 +61 501 +61 552 +62 600 +62 684 +63 596 +64 601 +64 661 +66 584 +67 548 +67 601 +67 628 +68 584 +68 601 +69 548 +70 516 +70 517 +72 656 +74 516 +74 517 +74 629 +75 628 +75 629 +75 656 +76 516 +76 574 +76 596 +77 529 +77 553 +77 577 +77 584 +77 628 +78 661 +79 515 +79 577 +80 501 +81 661 +82 501 +82 516 +85 549 +85 553 +85 584 +86 540 +86 643 +88 501 +88 540 +88 596 +88 629 +88 643 +89 552 +89 656 +91 468 +91 479 +91 564 +92 693 +93 484 +93 547 +95 464 +95 527 +95 598 +97 499 +97 554 +99 640 +100 663 +101 527 +101 653 +104 524 +104 663 +105 695 +107 564 +108 524 +110 652 +111 653 +112 524 +114 479 +114 640 +114 653 +116 524 +116 531 +116 598 +117 464 +117 499 +119 464 +119 564 +119 695 +120 513 +120 547 +122 499 +123 547 +124 640 +124 653 +125 695 +126 527 +127 499 +127 564 +127 598 +128 499 +128 531 +128 693 +130 527 +131 547 +132 479 +132 513 +132 564 +132 658 +134 695 +135 653 +136 658 +137 531 +137 663 +138 693 +140 484 +140 663 +141 524 +141 531 +141 658 +141 695 +142 484 +143 468 +144 513 +144 527 +144 531 +144 554 +144 663 +147 468 +147 693 +149 652 +149 658 +151 598 +151 652 +151 658 +152 484 +153 554 +154 602 +157 632 +158 632 +159 634 +159 672 +161 633 +162 568 +162 602 +163 602 +164 618 +164 639 +165 480 +167 633 +167 674 +169 498 +169 624 +169 689 +170 575 +170 603 +170 624 +172 624 +174 672 +175 480 +175 498 +175 633 +177 505 +177 610 +177 618 +180 618 +180 689 +182 633 +183 480 +183 568 +183 610 +186 639 +187 498 +187 631 +189 674 +190 603 +191 575 +192 634 +192 672 +194 633 +195 558 +195 610 +196 505 +197 498 +197 632 +199 610 +199 631 +200 631 +200 674 +202 575 +204 634 +205 639 +206 603 +207 558 +207 575 +207 689 +209 480 +211 558 +212 689 +213 498 +214 689 +215 568 +217 505 +220 475 +220 657 +221 609 +221 613 +222 504 +222 507 +222 609 +222 670 +222 700 +223 504 +224 533 +225 657 +226 605 +226 636 +227 533 +229 613 +229 615 +229 650 +230 609 +230 615 +231 620 +232 491 +233 650 +234 613 +235 614 +235 650 +236 542 +236 613 +237 491 +238 542 +238 605 +239 523 +239 542 +239 670 +240 475 +240 507 +240 670 +241 609 +241 620 +242 475 +242 605 +243 700 +244 700 +245 475 +245 614 +245 615 +246 542 +246 609 +246 614 +247 475 +248 491 +248 533 +249 523 +250 504 +250 507 +252 542 +254 620 +254 636 +254 700 +255 491 +255 504 +255 533 +256 605 +256 657 +256 670 +257 491 +257 504 +257 620 +257 700 +258 523 +258 636 +259 485 +259 556 +259 583 +259 626 +260 483 +260 520 +261 606 +262 508 +262 593 +263 520 +263 611 +263 687 +264 467 +264 496 +264 611 +264 626 +264 659 +265 508 +265 556 +265 659 +265 687 +266 467 +266 485 +266 489 +266 520 +266 570 +266 593 +266 679 +267 489 +267 508 +267 582 +268 467 +268 485 +268 489 +268 508 +268 520 +268 570 +268 593 +269 467 +269 593 +269 606 +269 611 +270 483 +270 508 +270 583 +270 611 +270 626 +271 496 +271 556 +271 582 +271 626 +271 687 +272 489 +272 583 +272 593 +272 622 +273 485 +273 583 +273 611 +273 679 +274 556 +274 583 +274 659 +274 679 +275 489 +275 556 +275 570 +275 606 +275 622 +275 626 +275 687 +276 483 +276 496 +276 570 +276 582 +276 622 +276 687 +277 644 +279 617 +281 539 +281 625 +281 683 +282 651 +283 537 +283 649 +284 623 +285 651 +285 692 +286 537 +286 539 +286 625 +286 678 +287 539 +287 677 +288 532 +289 683 +289 692 +290 535 +290 651 +291 644 +295 545 +296 623 +296 644 +297 589 +297 649 +298 586 +299 471 +300 539 +300 589 +300 683 +301 536 +302 473 +304 473 +305 536 +305 586 +305 644 +305 678 +306 644 +308 532 +308 545 +308 588 +308 617 +308 692 +309 535 +309 586 +310 471 +310 535 +311 649 +311 677 +311 683 +312 544 +312 678 +314 471 +315 588 +315 589 +315 649 +316 532 +316 586 +316 625 +317 617 +318 544 +320 537 +320 544 +320 617 +320 649 +320 692 +321 623 +321 625 +322 588 +323 532 +323 625 +324 536 +324 678 +326 537 +327 535 +327 683 +328 473 +328 536 +328 545 +329 589 +331 677 +332 544 +332 677 +333 588 +333 651 +334 486 +334 607 +335 470 +335 492 +335 502 +335 669 +335 681 +336 470 +336 502 +336 662 +337 470 +338 526 +338 671 +340 619 +340 691 +341 607 +342 518 +342 619 +343 526 +346 562 +347 492 +347 607 +348 514 +349 518 +349 662 +349 681 +350 637 +350 669 +351 528 +351 671 +353 469 +353 530 +354 681 +355 518 +355 681 +356 514 +357 662 +358 518 +358 691 +359 637 +360 486 +360 514 +360 580 +361 469 +361 619 +361 669 +362 669 +362 691 +363 530 +365 502 +365 666 +366 528 +366 607 +366 662 +366 671 +367 530 +367 637 +368 469 +369 469 +371 514 +371 528 +372 469 +374 619 +375 502 +376 607 +379 492 +379 526 +379 530 +379 580 +381 470 +381 486 +381 562 +384 528 +384 671 +386 562 +386 619 +387 486 +387 526 +388 492 +388 580 +388 666 +389 492 +389 562 +389 662 +390 666 +391 476 +391 563 +391 579 +391 581 +392 525 +392 541 +392 579 +393 572 +393 592 +394 510 +394 525 +394 572 +394 579 +394 612 +394 701 +395 466 +395 481 +395 551 +395 581 +395 612 +396 494 +396 503 +396 525 +396 579 +396 587 +396 668 +397 490 +397 503 +397 521 +397 551 +397 572 +397 587 +397 612 +397 665 +397 668 +397 701 +398 476 +398 481 +398 503 +398 510 +398 563 +398 701 +399 465 +399 466 +399 494 +399 541 +399 572 +399 592 +400 466 +400 476 +400 521 +400 525 +400 541 +400 563 +400 587 +400 612 +400 668 +400 701 +401 466 +401 551 +401 665 +402 494 +402 510 +402 521 +402 572 +402 587 +402 592 +403 466 +403 476 +403 481 +403 510 +403 521 +404 494 +404 510 +404 592 +404 665 +404 701 +405 465 +405 481 +405 490 +405 521 +405 581 +406 465 +406 481 +406 490 +406 579 +406 587 +406 592 +407 490 +407 563 +408 477 +408 546 +408 673 +408 685 +409 543 +409 685 +410 546 +410 627 +410 673 +410 698 +411 682 +411 688 +411 698 +412 546 +413 477 +413 673 +413 675 +413 694 +414 682 +415 512 +415 550 +415 685 +417 512 +417 673 +417 682 +418 627 +418 688 +419 488 +419 682 +420 477 +420 685 +421 546 +422 675 +422 688 +423 682 +424 675 +426 512 +426 550 +427 627 +427 694 +428 546 +431 488 +432 543 +432 664 +432 673 +433 477 +433 512 +433 698 +434 688 +434 694 +435 477 +435 550 +435 664 +436 488 +436 512 +436 522 +436 685 +437 694 +438 664 +438 698 +439 522 +439 675 +439 688 +441 522 +441 543 +441 675 +442 534 +442 585 +442 599 +442 647 +442 676 +442 686 +443 497 +443 646 +443 667 +444 519 +445 534 +445 557 +445 599 +445 667 +446 478 +446 509 +446 559 +446 573 +446 645 +446 667 +446 676 +447 497 +447 519 +447 599 +447 696 +448 559 +448 680 +448 686 +448 696 +449 559 +449 647 +449 654 +449 680 +449 686 +450 493 +450 557 +450 573 +450 621 +450 696 +451 478 +451 509 +451 621 +451 645 +451 660 +451 676 +452 557 +452 585 +452 599 +452 647 +453 493 +453 497 +453 557 +453 585 +453 645 +453 696 +454 478 +454 509 +454 519 +454 534 +454 645 +454 660 +454 667 +454 686 +455 497 +455 519 +455 534 +455 599 +455 646 +455 654 +455 660 +455 676 +456 559 +456 573 +456 621 +456 654 +456 680 +456 696 +457 493 +457 646 +458 573 +458 585 +458 646 +458 676 +459 497 +459 509 +459 680 +460 645 +460 646 +460 660 +460 680 +460 686 +461 509 +461 585 +461 621 +461 660 +462 519 +462 534 +462 557 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/instances/46.gr b/src/githubtests/medium_test_set/instances/46.gr new file mode 100644 index 0000000..d9e02eb --- /dev/null +++ b/src/githubtests/medium_test_set/instances/46.gr @@ -0,0 +1,1229 @@ +p ocr 770 238 1228 +1 823 +1 883 +1 884 +2 952 +4 803 +4 902 +5 884 +5 894 +6 781 +6 883 +6 902 +6 941 +7 781 +7 823 +8 902 +9 902 +9 908 +10 778 +10 883 +10 941 +12 891 +13 778 +13 941 +13 952 +14 811 +14 884 +14 894 +15 823 +15 894 +15 991 +16 803 +16 823 +16 847 +16 884 +18 803 +18 908 +19 811 +19 883 +19 908 +20 908 +21 883 +21 941 +22 778 +22 823 +23 891 +23 902 +24 781 +24 803 +24 884 +24 894 +24 902 +25 781 +25 847 +25 891 +26 847 +27 884 +27 908 +28 803 +29 894 +30 952 +30 991 +31 991 +32 847 +33 803 +33 811 +33 991 +34 847 +34 894 +35 894 +35 908 +35 991 +36 883 +37 778 +37 781 +38 803 +38 941 +39 778 +39 823 +40 781 +40 884 +41 891 +41 902 +43 823 +43 908 +44 926 +45 774 +46 978 +47 926 +50 806 +50 852 +51 806 +51 837 +52 926 +54 775 +54 900 +55 806 +55 938 +57 984 +58 926 +59 900 +60 852 +61 806 +65 774 +66 938 +70 938 +70 984 +71 819 +73 819 +76 819 +77 775 +77 852 +77 900 +79 852 +81 775 +81 984 +82 978 +83 866 +84 852 +89 837 +90 774 +91 837 +93 978 +94 978 +96 775 +97 774 +97 984 +98 837 +99 866 +99 938 +99 984 +100 775 +100 852 +101 775 +104 984 +105 774 +105 978 +108 837 +108 900 +109 774 +110 926 +110 978 +114 938 +118 852 +118 938 +121 837 +122 866 +126 791 +126 942 +127 840 +127 901 +127 939 +128 771 +128 814 +128 844 +128 871 +128 934 +128 940 +128 1005 +128 1008 +129 843 +129 873 +129 881 +129 901 +129 939 +130 798 +130 814 +130 871 +130 934 +130 940 +130 946 +131 901 +131 939 +132 812 +132 893 +132 934 +132 940 +132 946 +132 1008 +133 873 +133 893 +133 942 +134 796 +134 843 +134 844 +134 871 +134 934 +135 796 +136 812 +136 844 +137 809 +137 840 +137 942 +138 836 +138 934 +138 1005 +139 809 +139 812 +139 836 +139 844 +139 881 +139 893 +139 946 +139 1005 +139 1008 +140 771 +140 836 +141 836 +141 893 +142 814 +142 939 +142 940 +142 942 +142 1005 +143 814 +143 843 +143 942 +144 771 +144 798 +144 809 +144 812 +144 940 +145 791 +145 840 +145 843 +145 940 +146 798 +146 836 +146 881 +147 771 +147 940 +147 1008 +148 771 +148 791 +148 796 +148 893 +148 946 +148 1005 +149 814 +149 840 +149 844 +149 893 +149 901 +149 946 +149 1008 +150 901 +151 771 +151 791 +151 812 +151 836 +151 840 +151 871 +152 873 +153 798 +153 840 +153 946 +153 1005 +154 836 +154 893 +154 934 +154 1005 +154 1008 +155 953 +158 953 +158 961 +159 979 +159 995 +166 813 +168 898 +169 810 +169 961 +170 979 +171 810 +171 953 +171 961 +172 841 +173 918 +173 980 +174 813 +174 953 +177 779 +177 980 +178 980 +180 961 +181 979 +182 961 +183 918 +183 995 +191 841 +191 961 +191 979 +192 898 +193 898 +200 813 +203 898 +206 898 +207 810 +208 918 +209 779 +210 979 +213 813 +217 779 +218 813 +220 961 +224 898 +225 777 +227 841 +229 777 +229 779 +230 995 +231 953 +233 777 +233 779 +233 980 +237 779 +237 841 +238 995 +240 898 +244 980 +244 995 +246 988 +247 869 +248 794 +248 804 +248 818 +248 855 +248 861 +248 988 +249 904 +249 911 +250 1001 +251 818 +252 794 +252 1001 +253 869 +254 804 +254 973 +255 943 +256 794 +257 804 +257 855 +257 911 +258 799 +259 943 +260 825 +260 943 +263 799 +265 861 +266 794 +266 825 +266 988 +268 825 +270 804 +270 825 +271 861 +272 818 +272 1001 +274 855 +275 825 +276 988 +279 794 +280 861 +280 886 +280 911 +282 825 +284 855 +284 973 +285 886 +286 861 +286 973 +288 799 +288 804 +289 869 +289 943 +290 904 +290 911 +291 804 +293 869 +295 799 +295 825 +295 861 +296 904 +299 886 +299 943 +299 988 +300 904 +301 804 +302 943 +303 829 +304 865 +304 868 +304 912 +306 790 +306 867 +308 780 +308 784 +308 1004 +309 790 +310 972 +311 790 +311 838 +311 921 +312 783 +312 956 +313 875 +313 917 +314 917 +314 927 +315 780 +316 783 +316 822 +316 875 +317 865 +319 912 +320 790 +321 829 +321 1004 +323 773 +323 783 +323 801 +323 829 +325 838 +325 912 +325 956 +325 1004 +326 966 +326 1002 +327 838 +327 912 +327 921 +328 822 +328 838 +328 927 +329 780 +329 865 +329 875 +329 966 +330 783 +330 816 +330 921 +332 875 +332 921 +333 783 +333 829 +333 921 +333 972 +334 816 +334 838 +335 780 +335 867 +335 912 +335 1002 +336 867 +337 816 +340 784 +340 790 +340 868 +340 1004 +341 780 +341 790 +341 829 +341 863 +342 868 +343 867 +344 784 +344 816 +344 822 +344 912 +344 927 +345 921 +345 927 +346 816 +346 912 +347 1002 +349 822 +349 865 +351 816 +351 867 +351 868 +351 956 +352 829 +353 784 +353 867 +353 1004 +354 972 +355 829 +355 966 +356 801 +356 838 +358 867 +359 780 +359 783 +360 801 +360 1002 +361 863 +363 773 +363 917 +364 1002 +365 863 +366 773 +366 966 +367 966 +367 1004 +368 838 +368 917 +368 956 +374 997 +375 786 +375 895 +375 987 +376 876 +376 947 +377 974 +378 987 +379 885 +379 963 +380 786 +381 997 +383 831 +385 831 +385 885 +386 776 +386 821 +386 981 +387 1007 +388 786 +388 831 +388 947 +390 821 +390 895 +391 963 +392 876 +393 831 +393 879 +398 831 +398 1007 +399 776 +399 862 +399 974 +400 987 +401 947 +401 987 +402 987 +403 997 +404 876 +406 821 +406 879 +406 1007 +407 776 +407 885 +407 947 +407 969 +408 879 +409 862 +409 879 +410 951 +411 826 +412 969 +414 997 +417 951 +419 786 +419 821 +421 981 +423 969 +424 879 +426 963 +427 776 +427 987 +427 997 +428 876 +429 879 +429 997 +431 776 +432 821 +432 862 +433 981 +433 987 +434 862 +434 885 +435 951 +435 974 +437 895 +437 969 +438 885 +439 831 +439 876 +439 951 +439 963 +440 826 +441 969 +441 974 +442 831 +442 947 +442 997 +444 879 +444 969 +444 974 +445 826 +446 850 +447 850 +447 878 +447 899 +448 808 +448 860 +450 835 +450 853 +450 860 +450 958 +451 851 +451 878 +453 839 +454 835 +454 860 +456 880 +456 899 +456 958 +457 808 +457 851 +459 788 +459 853 +459 899 +460 850 +460 851 +460 958 +461 835 +462 888 +463 958 +464 850 +465 835 +465 839 +467 878 +467 888 +467 977 +468 851 +468 860 +471 839 +471 919 +471 933 +472 788 +472 853 +472 860 +472 916 +475 788 +475 860 +475 919 +475 977 +477 933 +478 835 +478 839 +480 850 +482 860 +483 788 +483 878 +484 851 +485 880 +485 916 +485 977 +487 919 +488 853 +488 899 +489 808 +489 835 +489 958 +490 788 +490 899 +490 958 +492 916 +493 919 +493 933 +494 788 +494 916 +495 839 +496 888 +497 835 +497 880 +498 788 +498 919 +498 977 +499 880 +499 977 +500 853 +501 850 +501 851 +501 853 +501 958 +502 878 +503 853 +503 916 +503 919 +504 933 +505 792 +505 857 +505 915 +505 996 +506 833 +506 842 +506 945 +506 960 +506 986 +506 998 +507 842 +507 915 +507 986 +507 992 +508 833 +508 834 +508 870 +508 903 +508 915 +508 986 +508 989 +509 824 +509 833 +509 834 +509 996 +509 998 +510 824 +510 872 +511 859 +511 945 +512 824 +512 870 +512 903 +512 924 +512 992 +512 996 +513 824 +513 834 +513 896 +513 983 +513 989 +513 998 +514 792 +514 857 +514 924 +514 992 +514 996 +515 824 +515 834 +515 989 +516 792 +516 846 +516 857 +516 903 +517 824 +517 896 +517 945 +517 960 +517 986 +518 896 +518 945 +518 989 +519 846 +519 859 +519 945 +519 989 +520 872 +520 903 +520 986 +520 998 +521 802 +521 870 +521 915 +521 945 +522 842 +522 846 +522 870 +522 903 +522 960 +522 992 +523 846 +523 870 +523 872 +523 915 +523 992 +523 996 +524 824 +524 834 +524 989 +524 996 +525 870 +525 998 +526 833 +526 859 +526 872 +526 986 +527 872 +527 924 +527 983 +528 792 +528 834 +528 915 +529 859 +529 896 +529 903 +529 998 +530 792 +530 842 +530 872 +530 998 +531 802 +531 859 +531 924 +531 996 +532 802 +532 834 +532 846 +532 857 +532 903 +532 945 +532 983 +532 992 +533 802 +533 846 +533 872 +533 992 +534 787 +534 793 +534 910 +535 787 +535 905 +535 930 +536 910 +536 932 +537 817 +537 820 +537 910 +538 820 +538 930 +538 975 +538 1003 +539 793 +539 820 +540 882 +540 910 +540 930 +541 994 +542 793 +542 930 +542 1003 +543 975 +544 793 +544 930 +545 793 +545 817 +545 882 +545 905 +545 1003 +547 820 +547 856 +548 787 +548 820 +548 932 +548 975 +549 930 +550 787 +550 793 +550 856 +550 905 +550 975 +550 1003 +551 787 +551 817 +551 910 +552 787 +552 817 +552 820 +552 1003 +553 817 +553 910 +553 932 +553 994 +554 856 +554 882 +554 905 +554 910 +554 994 +554 1003 +555 817 +555 820 +555 856 +555 930 +556 975 +557 787 +557 817 +557 882 +557 975 +559 828 +559 971 +563 807 +563 925 +564 828 +565 928 +566 897 +568 874 +570 922 +571 971 +572 848 +573 795 +573 848 +573 971 +574 874 +575 795 +577 797 +578 848 +578 887 +578 913 +579 795 +579 807 +579 948 +581 874 +582 874 +584 948 +585 848 +585 928 +587 807 +587 874 +588 948 +589 913 +589 922 +590 815 +590 874 +592 782 +592 795 +592 815 +593 928 +599 795 +601 797 +606 815 +610 959 +613 795 +613 807 +613 887 +613 971 +616 897 +616 925 +618 925 +618 948 +620 959 +622 828 +622 897 +624 848 +624 971 +625 815 +625 828 +627 795 +627 797 +628 848 +628 925 +629 815 +629 922 +630 782 +633 815 +634 828 +634 948 +634 971 +636 959 +638 887 +641 874 +643 782 +643 797 +643 971 +644 913 +649 828 +650 848 +654 849 +654 864 +654 949 +654 962 +654 999 +655 849 +655 854 +655 892 +655 909 +655 937 +655 999 +655 1000 +655 1006 +656 854 +656 864 +656 929 +656 937 +656 964 +657 923 +657 935 +657 962 +658 800 +658 923 +658 935 +658 970 +659 889 +659 909 +659 923 +659 1006 +660 854 +660 889 +660 929 +660 935 +660 949 +660 957 +660 982 +661 832 +661 889 +661 935 +661 937 +661 999 +662 800 +662 849 +662 923 +662 929 +662 955 +662 962 +662 999 +663 949 +663 955 +664 849 +664 889 +664 923 +664 935 +664 937 +664 1006 +665 889 +665 929 +665 937 +665 949 +665 957 +665 962 +665 1000 +666 892 +666 993 +666 1006 +667 854 +667 892 +667 962 +667 970 +668 1000 +668 1006 +669 854 +669 864 +669 955 +670 929 +670 955 +670 970 +670 1000 +671 800 +671 832 +671 864 +671 964 +671 993 +671 1000 +672 849 +672 909 +672 957 +672 964 +672 982 +672 985 +673 849 +673 935 +673 955 +673 962 +673 964 +673 999 +674 832 +674 889 +674 909 +674 949 +674 964 +674 985 +674 993 +674 1006 +675 929 +675 949 +675 957 +675 964 +675 999 +676 892 +676 923 +676 962 +676 985 +676 993 +677 832 +677 849 +677 937 +677 970 +677 982 +677 985 +678 832 +678 955 +678 993 +678 999 +679 909 +679 970 +679 982 +680 789 +680 805 +680 858 +680 931 +680 976 +681 789 +681 858 +681 906 +682 785 +683 858 +683 944 +683 968 +683 976 +684 805 +684 845 +684 906 +684 950 +685 805 +685 845 +686 827 +686 858 +687 936 +687 944 +688 785 +688 827 +688 845 +688 976 +689 845 +689 936 +690 805 +690 827 +690 936 +690 950 +691 827 +691 845 +691 906 +691 931 +691 950 +692 785 +692 827 +692 950 +693 789 +693 805 +693 931 +694 805 +694 858 +694 944 +695 789 +696 950 +696 968 +696 976 +697 931 +698 906 +698 936 +699 950 +700 944 +700 976 +701 936 +702 827 +702 906 +702 944 +702 950 +703 789 +703 976 +704 789 +704 944 +705 968 +706 845 +706 944 +706 976 +711 830 +712 907 +714 772 +715 890 +715 954 +715 965 +716 772 +717 877 +717 990 +718 830 +718 914 +719 877 +719 920 +723 954 +723 967 +724 965 +726 914 +729 877 +730 830 +731 907 +731 990 +732 830 +733 967 +734 954 +736 772 +736 890 +736 920 +736 967 +737 914 +737 965 +740 890 +741 877 +742 772 +743 907 +744 890 +745 914 +746 914 +746 990 +747 907 +748 830 +748 907 +748 954 +748 965 +749 877 +749 990 +750 890 +750 954 +751 967 +752 954 +752 967 +753 907 +753 920 +754 890 +755 830 +755 914 +757 877 +757 954 +759 920 +760 907 +761 830 +764 920 +765 772 +765 920 +766 877 +766 890 +766 990 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/instances/47.gr b/src/githubtests/medium_test_set/instances/47.gr new file mode 100644 index 0000000..626b42b --- /dev/null +++ b/src/githubtests/medium_test_set/instances/47.gr @@ -0,0 +1,260 @@ +p ocr 132 128 259 +1 159 +4 137 +4 201 +5 230 +5 252 +6 145 +7 170 +7 222 +7 235 +8 195 +9 150 +9 156 +9 182 +9 245 +9 249 +10 190 +12 187 +12 191 +12 260 +13 241 +19 149 +19 166 +21 141 +21 171 +24 147 +24 155 +25 215 +26 179 +26 181 +26 207 +26 241 +27 198 +28 154 +28 196 +29 183 +29 253 +30 146 +33 142 +35 213 +35 240 +35 248 +36 188 +36 227 +38 220 +39 165 +39 233 +40 152 +45 185 +48 241 +50 228 +50 259 +51 203 +52 258 +53 223 +54 135 +54 204 +55 212 +55 241 +55 243 +56 148 +56 232 +57 180 +57 192 +58 134 +58 200 +61 225 +61 242 +65 197 +65 241 +66 237 +67 138 +67 174 +67 199 +68 157 +68 176 +70 168 +70 244 +71 251 +72 229 +73 194 +73 254 +75 236 +76 214 +78 209 +81 160 +82 169 +82 210 +82 218 +83 202 +84 162 +85 158 +86 211 +86 255 +87 189 +87 257 +88 193 +89 239 +89 256 +90 164 +90 173 +91 177 +91 217 +96 231 +97 172 +97 175 +97 226 +99 143 +99 246 +100 241 +100 247 +103 151 +103 234 +105 241 +106 163 +107 139 +108 144 +108 221 +108 224 +109 136 +111 241 +114 205 +114 219 +117 206 +120 140 +120 208 +121 153 +122 186 +122 238 +123 167 +124 133 +124 161 +127 184 +130 178 +130 250 +131 216 +132 241 +8 133 +51 133 +57 133 +29 134 +42 134 +32 137 +83 137 +95 144 +107 148 +24 150 +120 151 +12 152 +50 153 +54 153 +104 153 +109 154 +78 156 +124 156 +15 157 +18 161 +117 161 +3 163 +16 163 +43 163 +49 163 +88 167 +41 168 +63 168 +98 168 +116 168 +72 169 +86 169 +58 171 +89 175 +67 176 +56 177 +64 177 +27 179 +75 179 +114 181 +7 182 +22 182 +77 182 +69 184 +34 186 +87 186 +14 187 +53 187 +25 188 +47 188 +71 188 +20 189 +23 189 +130 191 +39 192 +45 196 +36 197 +60 198 +2 200 +101 200 +110 200 +129 201 +66 202 +11 203 +79 203 +19 204 +76 208 +85 208 +37 209 +106 209 +125 211 +123 212 +46 213 +122 214 +1 217 +17 217 +44 218 +30 219 +38 219 +52 219 +68 219 +84 219 +91 223 +121 223 +28 224 +62 225 +94 225 +119 225 +103 227 +108 229 +113 229 +82 234 +90 234 +127 234 +112 236 +59 237 +40 238 +92 238 +93 238 +115 238 +118 238 +102 240 +73 242 +74 242 +96 242 +128 242 +131 242 +61 243 +70 243 +126 243 +21 244 +35 244 +97 244 +99 244 +5 245 +81 247 +6 248 +9 248 +33 249 +80 249 +10 250 +31 257 +4 259 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/instances/48.gr b/src/githubtests/medium_test_set/instances/48.gr new file mode 100644 index 0000000..8c96451 --- /dev/null +++ b/src/githubtests/medium_test_set/instances/48.gr @@ -0,0 +1,373 @@ +p ocr 179 194 372 +1 233 +2 336 +4 188 +4 205 +4 255 +6 332 +8 222 +9 189 +10 210 +10 322 +10 339 +11 214 +11 238 +11 256 +13 212 +18 267 +18 283 +19 313 +21 183 +22 180 +22 257 +22 284 +24 333 +25 359 +26 266 +26 335 +26 371 +28 203 +28 315 +29 288 +29 310 +29 338 +31 250 +31 281 +35 245 +37 230 +37 311 +39 270 +39 285 +43 239 +44 220 +44 229 +45 185 +47 293 +47 337 +47 352 +48 191 +48 207 +48 280 +48 338 +49 304 +53 296 +53 325 +54 227 +56 213 +56 292 +56 306 +56 348 +56 358 +57 276 +57 287 +57 366 +61 254 +61 350 +63 258 +64 194 +64 202 +64 242 +64 243 +65 231 +66 298 +66 302 +66 343 +68 265 +68 269 +69 198 +69 211 +70 219 +70 338 +71 373 +72 323 +73 309 +75 215 +75 234 +75 244 +77 354 +80 342 +80 372 +81 275 +82 197 +83 195 +83 317 +83 330 +87 251 +89 226 +90 364 +91 236 +91 326 +94 218 +95 264 +95 319 +97 351 +99 260 +99 274 +99 324 +99 355 +100 327 +100 331 +101 181 +101 200 +101 209 +101 253 +104 182 +104 349 +105 303 +105 357 +106 320 +108 184 +109 232 +109 252 +109 259 +109 286 +109 316 +110 334 +111 204 +113 318 +113 328 +113 340 +113 369 +118 365 +119 246 +120 301 +121 187 +121 224 +121 263 +121 291 +121 294 +122 186 +122 290 +124 312 +125 341 +126 192 +126 308 +126 321 +126 353 +127 196 +129 367 +131 262 +131 278 +131 338 +131 361 +132 370 +133 297 +133 368 +134 225 +134 345 +137 271 +137 295 +139 206 +139 241 +139 282 +140 272 +144 307 +144 329 +145 344 +147 201 +154 235 +155 314 +155 338 +156 199 +156 279 +157 240 +157 300 +157 305 +157 346 +157 356 +157 360 +162 223 +165 190 +165 193 +165 299 +165 363 +167 289 +168 208 +169 221 +169 277 +170 248 +171 228 +171 247 +172 237 +172 249 +174 216 +175 217 +177 268 +177 273 +177 362 +178 261 +178 347 +127 180 +80 181 +105 181 +122 182 +45 184 +89 184 +22 185 +25 186 +93 187 +135 187 +10 188 +43 188 +113 191 +14 195 +78 196 +3 197 +79 197 +100 197 +151 197 +164 197 +21 198 +167 198 +165 200 +47 201 +46 204 +109 204 +136 204 +31 205 +39 205 +51 208 +102 208 +28 210 +144 210 +24 211 +36 211 +60 211 +96 211 +124 212 +76 213 +120 214 +9 215 +42 215 +88 215 +146 215 +13 217 +49 219 +69 219 +143 220 +37 224 +68 224 +62 226 +32 228 +56 228 +159 228 +173 228 +107 230 +114 230 +83 232 +12 235 +81 235 +108 235 +179 235 +177 236 +38 237 +50 237 +6 238 +7 239 +41 244 +61 244 +160 244 +84 248 +8 249 +171 251 +134 255 +117 256 +162 258 +101 260 +35 261 +123 261 +152 261 +138 262 +156 262 +33 263 +99 264 +148 264 +154 264 +52 265 +19 266 +20 266 +72 266 +30 268 +58 269 +176 269 +126 272 +15 273 +92 273 +18 275 +149 277 +166 277 +1 278 +27 278 +54 278 +91 279 +174 287 +16 288 +157 288 +86 290 +141 291 +59 292 +137 292 +133 294 +26 296 +66 297 +77 297 +147 297 +97 301 +55 302 +90 302 +44 303 +64 303 +132 304 +169 304 +110 307 +82 310 +178 311 +104 313 +161 314 +75 321 +129 321 +4 323 +112 325 +87 326 +119 326 +139 326 +145 326 +170 330 +5 331 +128 331 +130 331 +53 332 +71 334 +98 334 +158 334 +17 335 +67 336 +85 336 +142 336 +168 336 +150 337 +163 337 +23 341 +175 341 +115 342 +73 345 +63 347 +106 349 +40 350 +153 350 +118 354 +140 355 +74 358 +125 358 +65 359 +34 360 +95 360 +121 361 +172 361 +116 363 +103 364 +57 365 +94 365 +11 370 +2 372 +111 373 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/instances/49.gr b/src/githubtests/medium_test_set/instances/49.gr new file mode 100644 index 0000000..ca50b78 --- /dev/null +++ b/src/githubtests/medium_test_set/instances/49.gr @@ -0,0 +1,423 @@ +p ocr 206 217 422 +1 237 +1 333 +1 335 +1 402 +2 310 +5 260 +5 360 +8 249 +8 406 +8 412 +9 369 +10 328 +12 253 +12 391 +15 405 +15 409 +16 399 +17 370 +20 239 +21 304 +21 323 +23 311 +23 332 +26 300 +29 361 +35 225 +36 270 +38 214 +38 384 +39 263 +41 271 +42 423 +44 246 +46 390 +48 350 +50 287 +51 280 +52 302 +54 241 +54 325 +54 349 +55 354 +56 213 +56 217 +56 234 +58 273 +59 294 +61 385 +61 408 +62 235 +62 284 +64 319 +64 381 +64 400 +66 293 +68 262 +68 378 +68 380 +69 415 +71 212 +71 277 +71 282 +72 259 +74 395 +75 321 +75 383 +75 413 +77 211 +77 286 +77 298 +77 376 +79 346 +81 407 +83 312 +83 370 +83 375 +84 324 +85 230 +85 331 +86 222 +86 236 +86 292 +86 397 +87 367 +88 307 +89 252 +89 305 +89 336 +89 382 +90 370 +90 418 +91 276 +91 371 +91 398 +91 420 +94 364 +96 227 +97 393 +102 229 +104 309 +104 370 +104 411 +104 414 +105 338 +105 422 +107 345 +107 357 +108 219 +108 352 +109 247 +112 266 +113 207 +113 356 +114 283 +115 285 +118 268 +118 269 +118 314 +118 401 +119 233 +119 281 +120 288 +120 410 +121 242 +122 224 +124 320 +124 339 +125 386 +126 244 +132 275 +132 318 +133 353 +134 290 +134 340 +135 363 +137 254 +137 358 +137 365 +137 373 +140 297 +140 419 +141 265 +141 348 +141 372 +144 322 +144 404 +145 421 +147 238 +148 341 +148 403 +150 327 +152 326 +153 329 +153 379 +154 215 +154 228 +159 248 +159 250 +162 392 +162 416 +163 344 +163 347 +164 220 +164 258 +166 226 +167 387 +168 279 +169 245 +170 417 +171 295 +172 208 +172 342 +172 351 +172 368 +174 240 +174 251 +176 264 +177 355 +178 232 +178 359 +179 296 +179 334 +179 337 +180 362 +181 216 +181 315 +181 396 +182 301 +183 274 +184 257 +184 267 +184 306 +184 317 +185 256 +185 389 +186 343 +187 291 +188 223 +188 299 +189 221 +189 308 +189 313 +189 377 +191 366 +192 209 +192 210 +192 255 +193 231 +195 278 +197 388 +198 394 +199 316 +200 243 +200 303 +200 330 +201 261 +201 289 +203 218 +204 272 +204 374 +41 207 +107 207 +89 210 +113 210 +149 210 +181 211 +34 214 +133 214 +2 219 +204 222 +16 223 +132 223 +166 224 +189 225 +109 226 +114 226 +69 230 +9 231 +56 231 +116 231 +11 232 +24 232 +85 232 +158 233 +202 233 +205 233 +66 234 +87 235 +164 235 +38 236 +103 236 +20 237 +196 238 +79 240 +197 240 +117 244 +72 245 +7 246 +199 248 +122 249 +30 251 +100 251 +123 252 +135 252 +203 255 +8 258 +49 258 +142 258 +1 259 +102 259 +152 259 +51 260 +157 261 +75 263 +78 263 +21 264 +120 268 +134 268 +147 269 +46 271 +201 271 +5 272 +76 272 +93 272 +121 273 +198 273 +190 276 +101 277 +33 279 +110 280 +194 281 +37 282 +112 283 +206 283 +4 284 +84 284 +119 285 +65 288 +29 289 +18 290 +169 291 +50 296 +62 296 +28 297 +129 297 +162 299 +27 300 +32 300 +47 300 +159 301 +186 302 +143 307 +191 308 +92 309 +141 310 +57 311 +77 311 +118 312 +13 313 +63 313 +80 313 +15 314 +99 315 +137 315 +140 315 +95 316 +14 318 +126 320 +200 321 +45 323 +160 323 +172 324 +60 326 +39 328 +128 328 +26 329 +168 329 +150 332 +183 334 +25 337 +48 337 +108 337 +91 338 +179 340 +151 341 +178 341 +22 343 +173 343 +64 346 +165 346 +86 349 +145 349 +187 349 +182 350 +44 353 +88 353 +40 357 +98 357 +6 358 +19 358 +36 362 +195 362 +192 364 +82 366 +54 367 +31 368 +124 369 +176 369 +136 371 +43 373 +71 373 +96 375 +130 376 +155 376 +156 376 +170 376 +153 378 +52 380 +125 381 +193 381 +144 383 +161 384 +35 385 +12 390 +139 390 +163 390 +180 390 +111 392 +184 392 +68 395 +70 395 +127 395 +138 395 +67 396 +94 396 +171 396 +167 398 +175 398 +59 399 +106 399 +174 399 +3 402 +61 402 +73 402 +154 402 +188 403 +58 412 +185 413 +23 414 +53 414 +55 417 +97 417 +105 417 +177 417 +42 418 +10 419 +146 419 +74 420 +81 421 +115 421 +131 422 +148 423 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/instances/5.gr b/src/githubtests/medium_test_set/instances/5.gr new file mode 100644 index 0000000..e04a218 --- /dev/null +++ b/src/githubtests/medium_test_set/instances/5.gr @@ -0,0 +1,251 @@ +p ocr 31 37 250 +1 40 +1 44 +1 48 +1 52 +1 53 +1 55 +1 58 +1 62 +1 63 +2 34 +2 35 +2 36 +2 42 +2 51 +2 54 +2 65 +2 68 +3 40 +3 44 +3 48 +3 52 +3 53 +3 55 +3 58 +3 62 +3 63 +4 32 +4 43 +4 56 +5 32 +5 43 +5 56 +6 32 +6 33 +6 36 +6 43 +6 49 +6 54 +6 56 +6 68 +7 32 +7 56 +8 38 +8 39 +8 47 +8 55 +8 57 +8 61 +8 66 +9 38 +9 39 +9 42 +9 45 +9 46 +9 57 +9 60 +9 64 +10 40 +10 44 +10 48 +10 52 +10 53 +10 55 +10 58 +10 62 +10 63 +11 33 +11 34 +11 35 +11 36 +11 43 +11 49 +11 50 +11 51 +11 54 +11 56 +11 68 +12 34 +12 35 +12 39 +12 42 +12 51 +12 57 +12 59 +12 60 +12 65 +13 37 +13 41 +13 52 +13 53 +13 58 +13 67 +14 32 +14 43 +14 56 +15 40 +15 44 +15 48 +15 52 +15 53 +15 55 +15 58 +15 62 +15 63 +16 37 +16 40 +16 41 +16 52 +16 53 +16 58 +16 67 +17 33 +17 34 +17 35 +17 36 +17 43 +17 49 +17 50 +17 51 +17 54 +17 56 +17 68 +18 33 +18 34 +18 35 +18 36 +18 42 +18 49 +18 50 +18 51 +18 54 +18 59 +18 65 +18 68 +19 33 +19 34 +19 35 +19 36 +19 42 +19 49 +19 50 +19 51 +19 54 +19 59 +19 65 +19 68 +20 32 +20 43 +20 56 +21 38 +21 40 +21 44 +21 47 +21 48 +21 55 +21 61 +21 62 +21 63 +21 66 +22 38 +22 39 +22 45 +22 47 +22 55 +22 57 +22 60 +22 61 +22 62 +22 66 +23 33 +23 34 +23 35 +23 36 +23 49 +23 50 +23 51 +23 54 +23 56 +23 68 +24 38 +24 39 +24 42 +24 45 +24 46 +24 47 +24 57 +24 59 +24 60 +24 61 +24 64 +24 65 +24 66 +25 37 +25 40 +25 41 +25 52 +25 53 +25 58 +25 63 +25 67 +26 38 +26 39 +26 47 +26 55 +26 57 +26 60 +26 61 +26 66 +27 40 +27 53 +27 55 +27 63 +28 32 +28 33 +28 36 +28 43 +28 54 +28 56 +28 68 +29 33 +29 34 +29 35 +29 36 +29 43 +29 49 +29 50 +29 51 +29 54 +29 56 +29 68 +30 37 +30 41 +30 52 +30 53 +30 58 +30 67 +31 38 +31 39 +31 44 +31 45 +31 46 +31 47 +31 48 +31 55 +31 57 +31 60 +31 61 +31 62 +31 64 +31 66 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/instances/50.gr b/src/githubtests/medium_test_set/instances/50.gr new file mode 100644 index 0000000..035201b --- /dev/null +++ b/src/githubtests/medium_test_set/instances/50.gr @@ -0,0 +1,441 @@ +p ocr 123 125 440 +1 127 +1 131 +1 226 +2 139 +2 148 +2 170 +2 202 +2 209 +3 188 +3 196 +3 203 +3 230 +4 144 +5 189 +5 231 +6 130 +6 141 +6 207 +6 231 +6 235 +6 242 +6 247 +7 166 +7 167 +7 169 +7 192 +8 175 +8 178 +8 229 +8 245 +9 136 +9 181 +9 190 +9 200 +10 149 +10 217 +10 222 +10 245 +11 141 +11 157 +11 234 +12 129 +12 229 +12 245 +13 124 +13 143 +13 165 +13 168 +13 197 +14 194 +14 212 +14 220 +15 226 +15 231 +16 157 +16 234 +17 146 +17 215 +18 129 +18 212 +18 217 +18 220 +18 225 +18 236 +19 124 +19 136 +19 150 +19 165 +19 190 +19 199 +19 234 +20 132 +20 134 +20 137 +20 141 +20 247 +21 131 +21 232 +22 128 +22 160 +22 198 +22 226 +23 134 +23 138 +23 141 +23 154 +24 160 +24 215 +25 153 +25 158 +25 185 +25 193 +25 205 +26 130 +26 134 +26 154 +26 247 +27 129 +27 133 +27 225 +28 146 +28 215 +28 223 +29 134 +29 154 +30 126 +30 175 +30 178 +30 179 +30 224 +30 229 +31 167 +31 183 +31 248 +32 141 +32 176 +32 185 +32 210 +32 234 +32 237 +33 146 +33 204 +33 208 +33 217 +33 223 +34 158 +34 185 +34 237 +35 128 +35 177 +36 172 +36 245 +37 192 +37 201 +38 212 +38 220 +39 126 +39 145 +39 187 +39 224 +40 183 +40 188 +40 196 +40 214 +41 135 +41 241 +42 135 +42 151 +42 184 +43 147 +43 150 +43 153 +43 180 +43 186 +43 193 +43 221 +44 202 +45 126 +45 224 +45 243 +46 140 +47 189 +47 207 +47 224 +47 231 +48 128 +48 231 +49 177 +49 216 +49 222 +50 160 +50 211 +50 218 +50 233 +51 212 +51 230 +52 190 +52 191 +52 206 +52 237 +53 151 +53 156 +53 208 +53 215 +54 144 +54 155 +54 163 +54 169 +54 242 +55 139 +55 184 +55 209 +55 239 +56 140 +56 164 +57 201 +58 189 +58 224 +59 147 +59 159 +59 162 +59 174 +59 180 +60 163 +60 248 +61 218 +61 226 +62 131 +62 137 +62 141 +62 156 +62 157 +62 170 +62 183 +62 202 +62 209 +62 241 +63 153 +63 159 +63 174 +63 180 +63 186 +64 165 +65 225 +65 228 +66 135 +66 156 +66 241 +67 148 +67 202 +67 239 +68 167 +68 176 +68 183 +68 185 +69 139 +69 148 +70 160 +70 177 +70 215 +70 217 +70 222 +70 223 +71 152 +71 165 +71 173 +71 219 +71 227 +72 139 +72 148 +72 239 +73 172 +73 175 +73 177 +73 189 +73 224 +73 231 +73 244 +74 168 +74 197 +75 131 +75 184 +75 209 +75 246 +76 143 +76 165 +76 168 +76 173 +76 227 +77 181 +77 182 +77 190 +77 200 +78 153 +78 193 +78 221 +79 142 +79 166 +79 167 +79 169 +79 195 +80 164 +80 172 +80 177 +80 244 +81 156 +81 241 +82 141 +82 142 +82 169 +82 210 +82 242 +83 157 +83 162 +84 125 +84 150 +84 152 +84 162 +84 165 +84 199 +85 140 +85 164 +85 172 +85 245 +86 203 +86 230 +87 155 +87 163 +87 167 +87 169 +87 192 +87 248 +88 156 +88 188 +88 204 +88 217 +89 158 +89 213 +89 237 +90 188 +90 194 +90 212 +90 217 +90 220 +90 230 +90 236 +91 126 +91 129 +91 187 +91 207 +92 132 +92 137 +93 136 +93 200 +93 234 +94 135 +94 184 +94 202 +94 241 +95 133 +95 207 +95 228 +96 155 +96 163 +97 172 +97 244 +98 142 +98 169 +98 195 +99 182 +99 200 +99 234 +100 202 +100 239 +101 177 +102 163 +102 183 +102 196 +102 203 +102 207 +102 214 +102 225 +102 228 +102 230 +102 242 +103 127 +103 131 +103 151 +103 184 +103 215 +103 218 +103 226 +103 246 +104 151 +104 215 +105 175 +105 179 +105 224 +106 131 +106 132 +106 137 +106 161 +106 226 +106 232 +107 144 +107 163 +107 242 +108 132 +108 161 +109 215 +109 223 +110 172 +110 175 +110 245 +111 182 +111 190 +111 234 +112 151 +112 184 +113 138 +113 141 +113 154 +113 235 +114 131 +114 137 +115 140 +115 164 +115 177 +115 222 +116 162 +116 174 +116 183 +116 185 +117 143 +117 165 +118 150 +118 158 +118 191 +118 193 +118 205 +118 206 +118 237 +119 125 +119 157 +119 238 +119 240 +120 132 +120 247 +121 145 +121 187 +121 224 +122 124 +122 171 +122 234 +123 125 +123 152 +123 157 +123 173 +123 197 +123 234 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/instances/51.gr b/src/githubtests/medium_test_set/instances/51.gr new file mode 100644 index 0000000..c0b04bd --- /dev/null +++ b/src/githubtests/medium_test_set/instances/51.gr @@ -0,0 +1,521 @@ +p ocr 150 154 520 +1 198 +1 244 +1 245 +1 293 +2 168 +2 250 +2 304 +3 193 +3 219 +3 228 +3 286 +3 301 +3 303 +4 180 +4 194 +4 228 +4 273 +4 301 +5 241 +5 274 +6 193 +6 252 +6 286 +6 287 +7 185 +7 188 +8 154 +8 196 +9 237 +9 262 +9 294 +10 248 +10 253 +10 271 +11 217 +11 250 +11 283 +12 151 +12 169 +12 199 +12 223 +12 226 +12 263 +12 275 +12 278 +13 209 +13 249 +14 204 +14 232 +14 272 +15 215 +15 236 +15 247 +16 160 +16 178 +16 202 +16 216 +16 298 +17 166 +17 202 +17 212 +18 210 +18 289 +19 182 +19 194 +19 219 +19 228 +19 282 +20 267 +21 234 +21 244 +21 263 +22 198 +22 288 +23 156 +23 190 +23 243 +23 246 +23 280 +23 296 +24 182 +24 195 +24 207 +24 282 +25 204 +25 284 +26 221 +26 248 +26 253 +26 271 +27 168 +27 189 +27 211 +27 247 +27 280 +27 297 +28 191 +28 240 +28 300 +29 186 +30 154 +30 195 +30 196 +30 235 +31 269 +32 159 +32 180 +32 181 +32 182 +32 216 +32 264 +32 300 +33 174 +33 258 +33 264 +34 193 +34 252 +35 151 +35 188 +35 199 +35 204 +35 254 +35 272 +35 299 +36 152 +36 159 +36 163 +36 171 +37 152 +37 250 +37 297 +38 222 +38 250 +39 181 +39 233 +39 237 +39 262 +39 263 +39 270 +40 156 +40 157 +40 239 +41 159 +41 191 +41 300 +42 152 +42 159 +42 174 +42 257 +42 264 +43 156 +43 190 +44 203 +44 234 +44 244 +45 167 +45 172 +45 183 +46 163 +47 168 +47 250 +47 283 +48 155 +48 157 +48 160 +48 177 +48 216 +48 242 +49 179 +49 285 +50 152 +50 185 +51 282 +51 286 +52 233 +52 237 +52 263 +53 226 +53 230 +54 255 +55 209 +55 249 +55 277 +55 278 +56 152 +56 167 +56 172 +56 174 +56 247 +56 255 +56 257 +57 214 +57 227 +58 192 +58 236 +58 247 +59 152 +59 181 +59 213 +59 261 +59 290 +60 151 +60 209 +60 292 +61 174 +61 179 +61 200 +61 216 +61 285 +62 158 +62 184 +62 195 +62 207 +62 265 +62 281 +63 161 +63 197 +64 152 +64 213 +64 224 +64 238 +64 250 +64 280 +65 166 +65 184 +65 214 +66 152 +66 187 +66 201 +66 251 +67 155 +67 216 +67 229 +67 243 +68 195 +68 207 +69 204 +69 266 +70 152 +70 185 +70 188 +70 201 +70 231 +70 279 +71 184 +71 227 +72 152 +72 163 +72 185 +72 188 +73 176 +73 221 +73 245 +74 178 +74 202 +74 216 +74 218 +75 242 +75 298 +76 162 +76 177 +76 296 +77 151 +77 209 +77 277 +77 278 +78 160 +78 173 +78 239 +79 240 +79 253 +79 270 +79 288 +79 300 +80 223 +80 232 +80 263 +80 279 +81 158 +81 184 +81 274 +82 152 +82 187 +82 251 +82 261 +82 290 +82 302 +83 165 +83 195 +83 227 +83 265 +84 168 +84 238 +84 280 +84 304 +85 188 +85 204 +85 279 +86 175 +86 249 +86 292 +86 299 +87 203 +87 221 +87 253 +87 263 +87 270 +88 206 +88 211 +88 297 +89 186 +89 244 +89 269 +90 174 +90 179 +90 285 +91 198 +91 221 +91 245 +92 219 +92 282 +92 303 +93 260 +93 275 +93 299 +94 167 +94 174 +94 183 +94 255 +95 159 +95 171 +95 210 +95 289 +96 193 +96 218 +96 225 +96 252 +96 268 +97 158 +97 184 +97 218 +97 241 +98 233 +98 237 +98 295 +99 168 +99 304 +100 159 +100 208 +100 210 +100 254 +100 288 +100 289 +101 189 +101 236 +101 243 +101 247 +101 280 +102 205 +102 232 +102 266 +103 165 +103 195 +103 235 +104 153 +104 175 +104 249 +104 278 +104 291 +105 206 +105 217 +106 220 +106 233 +106 262 +107 281 +107 282 +107 287 +108 154 +108 156 +108 170 +108 181 +108 182 +108 202 +108 213 +108 224 +108 239 +108 280 +109 240 +109 300 +110 218 +110 252 +111 181 +111 201 +111 231 +111 237 +111 302 +112 188 +112 254 +112 259 +112 276 +113 244 +113 288 +114 263 +114 279 +115 173 +115 202 +116 161 +116 259 +117 275 +117 291 +117 299 +118 186 +118 230 +118 244 +119 168 +119 206 +119 211 +119 217 +119 283 +120 186 +120 230 +120 260 +121 221 +121 253 +121 288 +122 181 +122 290 +122 302 +123 200 +123 216 +124 163 +124 171 +124 276 +125 187 +126 226 +126 260 +126 275 +127 166 +127 170 +127 227 +127 235 +128 222 +128 238 +128 250 +128 304 +129 171 +129 197 +129 210 +129 254 +129 256 +130 176 +130 221 +130 244 +130 245 +131 228 +131 301 +132 186 +132 244 +132 260 +132 267 +132 269 +133 151 +133 169 +133 278 +134 238 +134 304 +135 177 +135 296 +136 190 +136 246 +136 280 +137 174 +137 179 +137 200 +137 216 +137 258 +137 264 +138 180 +138 193 +138 216 +138 268 +138 301 +139 220 +139 262 +139 294 +139 295 +140 208 +140 267 +140 288 +141 166 +141 184 +141 202 +142 187 +142 251 +143 205 +143 232 +143 266 +143 279 +143 284 +144 215 +144 247 +144 255 +145 215 +145 216 +145 236 +145 243 +145 255 +146 174 +146 183 +147 153 +147 175 +147 291 +147 299 +148 154 +148 182 +149 164 +149 240 +149 288 +150 282 +150 287 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/instances/52.gr b/src/githubtests/medium_test_set/instances/52.gr new file mode 100644 index 0000000..e1968b3 --- /dev/null +++ b/src/githubtests/medium_test_set/instances/52.gr @@ -0,0 +1,821 @@ +p ocr 250 220 820 +1 324 +1 381 +1 413 +1 441 +2 404 +2 408 +2 448 +3 265 +3 381 +3 396 +4 293 +4 365 +4 394 +5 282 +5 373 +5 419 +5 455 +6 404 +6 448 +6 468 +7 271 +7 282 +7 313 +7 351 +7 367 +7 441 +8 298 +8 380 +8 442 +9 263 +9 277 +9 303 +10 384 +10 407 +11 277 +11 320 +11 336 +11 343 +11 357 +12 324 +12 441 +13 355 +13 411 +13 420 +14 359 +14 453 +14 467 +15 312 +15 317 +15 395 +15 434 +15 462 +15 469 +16 275 +16 323 +17 262 +17 344 +17 437 +17 438 +18 261 +18 298 +19 303 +19 345 +19 346 +19 356 +19 405 +19 439 +20 305 +21 359 +21 470 +22 388 +22 398 +23 447 +23 466 +24 310 +24 368 +24 392 +25 383 +26 323 +26 359 +26 383 +27 274 +27 351 +27 381 +27 406 +27 413 +27 441 +28 318 +28 379 +28 428 +29 295 +29 386 +30 338 +30 363 +30 393 +30 394 +30 437 +30 463 +31 445 +32 382 +32 409 +32 467 +33 286 +33 366 +33 429 +34 265 +34 274 +34 307 +34 333 +35 274 +35 351 +35 406 +36 253 +36 260 +36 349 +36 402 +37 329 +37 339 +38 286 +38 304 +38 354 +38 366 +38 429 +38 447 +38 461 +39 304 +39 461 +40 267 +41 371 +41 432 +42 345 +42 357 +43 327 +43 345 +44 312 +44 317 +44 454 +45 412 +45 454 +45 467 +46 303 +46 346 +47 253 +47 261 +47 291 +48 402 +48 443 +49 374 +50 365 +50 395 +51 362 +51 418 +52 291 +52 297 +52 311 +52 380 +53 353 +53 430 +54 291 +54 297 +54 380 +55 294 +55 379 +55 437 +56 294 +56 317 +56 437 +56 460 +57 255 +57 389 +57 440 +58 305 +58 470 +59 280 +59 344 +59 352 +59 437 +60 359 +60 470 +61 310 +61 368 +61 392 +61 411 +61 431 +62 283 +62 436 +63 273 +63 304 +63 423 +63 447 +63 461 +64 350 +64 375 +64 449 +64 452 +64 456 +65 255 +65 256 +65 397 +66 254 +66 411 +66 424 +67 322 +67 353 +68 325 +68 342 +68 382 +68 409 +69 280 +69 352 +69 394 +69 398 +70 429 +71 276 +71 335 +71 403 +72 299 +72 334 +72 447 +72 466 +73 251 +74 284 +74 287 +74 349 +74 370 +74 396 +74 467 +75 278 +75 411 +75 424 +75 431 +76 258 +76 300 +76 412 +76 446 +76 457 +77 295 +77 324 +78 271 +78 332 +78 416 +79 262 +79 388 +80 262 +80 344 +80 398 +81 365 +81 395 +82 361 +82 385 +82 440 +83 266 +83 371 +83 387 +83 422 +83 451 +84 411 +84 420 +85 327 +85 443 +86 365 +86 395 +87 376 +87 451 +88 328 +88 396 +89 329 +89 339 +90 295 +90 329 +91 275 +91 323 +91 359 +91 432 +92 394 +92 426 +93 407 +93 417 +94 260 +94 261 +94 402 +95 262 +95 388 +95 394 +95 399 +95 438 +96 271 +96 385 +96 416 +97 257 +97 286 +98 317 +98 363 +98 394 +98 426 +99 252 +99 312 +99 375 +99 449 +99 454 +99 462 +100 303 +100 345 +100 346 +101 252 +101 414 +101 444 +101 449 +102 288 +102 314 +102 345 +103 270 +103 403 +104 357 +104 405 +105 328 +105 332 +105 396 +105 410 +106 340 +106 364 +106 371 +107 281 +107 342 +107 382 +108 282 +108 302 +108 330 +108 351 +108 455 +109 293 +109 365 +109 394 +109 426 +109 469 +110 270 +110 358 +110 359 +110 401 +110 467 +111 283 +111 377 +112 272 +112 306 +112 341 +112 378 +112 433 +112 436 +113 269 +113 460 +114 295 +114 324 +114 339 +114 381 +115 391 +115 412 +116 284 +116 295 +116 337 +117 275 +118 279 +118 467 +119 265 +119 328 +119 396 +119 410 +120 281 +120 317 +120 382 +120 454 +120 467 +121 334 +121 466 +122 400 +122 454 +123 369 +123 383 +124 447 +124 466 +125 266 +125 340 +125 418 +126 305 +126 359 +126 432 +126 470 +127 271 +127 282 +127 313 +127 347 +127 373 +127 419 +128 369 +128 427 +128 432 +128 467 +128 468 +129 385 +129 397 +129 440 +130 266 +130 267 +130 283 +130 305 +130 318 +130 326 +130 360 +130 377 +130 378 +130 414 +130 417 +130 436 +130 444 +130 470 +131 257 +131 264 +131 299 +131 303 +131 310 +131 315 +131 334 +132 265 +132 381 +133 261 +133 291 +133 442 +134 388 +134 394 +134 398 +135 334 +135 392 +136 259 +136 300 +136 331 +136 380 +136 385 +137 279 +137 325 +137 341 +137 342 +137 360 +137 378 +137 409 +137 421 +138 277 +138 303 +138 357 +139 266 +139 326 +139 340 +139 371 +139 432 +140 255 +140 256 +140 397 +140 440 +141 287 +141 401 +142 253 +142 349 +143 301 +143 358 +143 390 +144 435 +144 450 +145 283 +145 415 +145 436 +146 258 +146 259 +146 300 +146 440 +147 290 +147 400 +147 420 +148 302 +148 307 +148 351 +149 271 +149 332 +149 374 +149 410 +150 439 +151 330 +151 374 +152 255 +152 258 +152 425 +153 270 +153 401 +153 403 +154 369 +154 453 +155 287 +155 349 +155 402 +155 443 +155 459 +156 255 +156 295 +156 441 +157 314 +157 320 +157 357 +158 301 +158 322 +158 353 +158 430 +159 353 +159 359 +159 390 +159 430 +160 271 +160 385 +161 268 +161 379 +161 394 +161 435 +161 437 +162 275 +162 369 +162 383 +162 432 +163 251 +163 289 +163 300 +163 345 +163 457 +164 265 +164 302 +164 330 +164 333 +164 374 +164 410 +165 296 +165 431 +166 264 +166 296 +166 309 +166 310 +167 337 +168 350 +168 449 +169 402 +169 443 +170 295 +170 337 +170 412 +170 446 +171 266 +171 267 +171 279 +171 407 +171 421 +171 422 +172 388 +172 398 +173 277 +173 336 +174 252 +174 276 +174 287 +174 355 +174 392 +174 411 +174 447 +174 466 +175 284 +175 412 +175 467 +176 285 +176 420 +177 348 +177 360 +177 379 +178 257 +178 286 +178 303 +178 327 +178 447 +178 459 +179 355 +179 400 +180 274 +180 307 +181 271 +181 374 +181 419 +181 455 +182 257 +182 286 +182 319 +183 294 +183 317 +183 342 +183 360 +184 285 +184 391 +184 412 +185 364 +185 371 +186 396 +187 373 +187 419 +188 415 +188 445 +189 331 +189 416 +190 316 +190 427 +191 405 +191 439 +192 261 +192 298 +192 300 +192 327 +192 345 +192 402 +192 443 +193 395 +193 434 +193 469 +194 266 +194 384 +195 354 +195 447 +196 282 +196 351 +197 316 +197 376 +197 387 +197 422 +197 451 +198 266 +198 362 +198 364 +198 371 +198 372 +199 332 +199 370 +200 296 +200 309 +200 424 +201 252 +201 276 +201 470 +202 328 +202 410 +203 331 +203 385 +203 416 +204 267 +204 272 +204 283 +204 306 +204 341 +204 377 +205 284 +205 295 +205 329 +205 339 +205 381 +206 254 +206 263 +206 277 +206 309 +206 412 +206 420 +206 424 +207 285 +207 290 +207 420 +208 286 +208 354 +208 447 +209 283 +209 306 +209 436 +209 445 +210 271 +210 397 +211 263 +211 264 +211 303 +211 309 +212 394 +212 435 +212 450 +213 258 +213 295 +213 386 +213 446 +214 266 +214 418 +215 253 +215 349 +216 286 +216 366 +217 272 +217 306 +218 306 +218 433 +218 436 +219 273 +219 286 +219 299 +219 304 +219 315 +219 319 +219 366 +219 423 +220 269 +220 317 +220 338 +220 393 +220 437 +220 460 +221 301 +221 359 +221 470 +222 386 +222 425 +223 371 +223 387 +223 427 +224 292 +224 301 +224 322 +224 390 +225 268 +225 350 +225 435 +225 449 +225 462 +226 316 +226 422 +226 427 +227 365 +227 394 +227 395 +227 435 +227 462 +228 303 +228 356 +228 357 +229 408 +229 427 +230 278 +230 296 +230 464 +231 428 +231 444 +232 275 +232 323 +232 383 +233 252 +233 355 +233 454 +234 268 +234 444 +234 449 +235 302 +235 333 +236 291 +236 442 +237 268 +237 444 +237 465 +238 276 +238 335 +238 401 +238 403 +238 458 +239 340 +239 362 +239 364 +239 418 +240 294 +240 348 +240 379 +241 277 +241 288 +241 308 +241 314 +241 320 +241 336 +242 338 +243 253 +243 291 +243 311 +243 370 +244 276 +244 301 +244 403 +244 470 +245 311 +245 332 +245 370 +245 380 +245 416 +246 251 +246 288 +246 308 +246 412 +247 279 +247 408 +247 427 +247 467 +248 255 +248 271 +248 367 +248 397 +249 285 +249 391 +249 400 +249 412 +250 280 +250 321 +250 437 +250 463 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/instances/53.gr b/src/githubtests/medium_test_set/instances/53.gr new file mode 100644 index 0000000..e9b0382 --- /dev/null +++ b/src/githubtests/medium_test_set/instances/53.gr @@ -0,0 +1,234 @@ +p ocr 101 111 233 +1 164 +2 171 +2 201 +3 164 +3 178 +3 201 +5 178 +5 201 +6 171 +6 201 +8 171 +8 201 +9 164 +9 178 +9 201 +10 164 +10 178 +10 201 +11 171 +11 201 +12 164 +13 164 +13 201 +14 171 +14 178 +16 164 +16 171 +16 201 +17 178 +17 201 +18 164 +18 178 +19 171 +21 171 +22 164 +22 171 +23 171 +23 178 +23 201 +24 164 +25 178 +26 164 +26 171 +27 201 +28 201 +29 164 +29 178 +30 171 +30 178 +31 164 +32 164 +32 171 +32 201 +33 178 +33 201 +34 171 +34 201 +35 201 +36 201 +38 164 +38 178 +38 201 +40 164 +40 178 +40 201 +41 178 +42 171 +42 178 +42 201 +43 164 +43 201 +44 171 +44 178 +45 164 +45 171 +45 201 +46 201 +47 178 +47 201 +48 178 +49 178 +49 201 +50 164 +50 178 +51 164 +51 178 +52 178 +53 164 +53 201 +54 171 +55 171 +56 105 +56 107 +56 108 +56 109 +56 110 +56 111 +56 112 +56 113 +56 114 +56 115 +56 116 +56 117 +56 123 +56 125 +56 126 +56 128 +56 129 +56 131 +56 133 +56 134 +56 135 +56 140 +56 142 +56 144 +56 146 +56 147 +56 149 +56 150 +56 151 +56 152 +56 167 +56 170 +56 171 +56 172 +56 175 +56 176 +56 177 +56 178 +56 179 +56 180 +56 182 +56 184 +56 185 +56 187 +56 188 +56 192 +56 198 +56 203 +56 205 +56 210 +56 211 +56 212 +57 164 +57 171 +57 201 +58 171 +59 171 +59 201 +60 171 +60 178 +60 201 +61 164 +61 171 +61 178 +61 201 +63 164 +63 171 +63 178 +64 164 +64 201 +65 164 +65 178 +66 171 +66 201 +67 171 +67 178 +67 201 +68 171 +68 178 +69 164 +69 171 +69 201 +70 164 +70 178 +71 164 +71 171 +71 178 +71 201 +72 178 +72 201 +73 164 +73 178 +74 171 +74 178 +76 178 +77 178 +78 164 +79 164 +79 178 +80 178 +80 201 +81 164 +81 171 +81 201 +82 171 +82 178 +83 171 +83 178 +84 178 +84 201 +85 164 +85 171 +85 201 +86 178 +86 201 +87 178 +87 201 +88 201 +89 164 +89 178 +89 201 +90 178 +91 201 +92 164 +92 171 +92 178 +94 171 +94 201 +95 171 +96 164 +96 178 +97 164 +97 201 +98 171 +98 178 +99 164 +99 171 +99 201 +100 171 +100 178 +100 201 +101 164 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/instances/54.gr b/src/githubtests/medium_test_set/instances/54.gr new file mode 100644 index 0000000..dc0b0bd --- /dev/null +++ b/src/githubtests/medium_test_set/instances/54.gr @@ -0,0 +1,282 @@ +p ocr 133 125 281 +2 187 +6 187 +15 187 +18 187 +19 187 +20 187 +23 187 +25 187 +26 187 +28 187 +33 187 +36 187 +37 187 +40 187 +52 187 +55 187 +61 187 +63 187 +69 139 +69 141 +69 145 +69 148 +69 152 +69 154 +69 163 +69 165 +69 168 +69 172 +69 181 +69 182 +69 184 +69 186 +69 187 +69 188 +69 190 +69 194 +69 199 +69 200 +69 201 +69 203 +69 207 +69 208 +69 209 +69 211 +69 212 +69 214 +69 218 +69 224 +69 225 +69 230 +69 236 +69 244 +69 245 +69 247 +69 248 +69 255 +69 256 +72 187 +74 187 +75 134 +75 135 +75 139 +75 140 +75 142 +75 144 +75 147 +75 149 +75 151 +75 154 +75 158 +75 162 +75 163 +75 164 +75 166 +75 168 +75 170 +75 174 +75 175 +75 176 +75 177 +75 180 +75 185 +75 187 +75 192 +75 198 +75 200 +75 204 +75 205 +75 207 +75 208 +75 217 +75 223 +75 224 +75 225 +75 226 +75 227 +75 232 +75 234 +75 235 +75 242 +75 248 +75 251 +75 252 +75 254 +75 255 +75 256 +76 187 +81 187 +83 187 +85 187 +86 187 +88 187 +89 187 +91 187 +92 134 +92 136 +92 137 +92 138 +92 139 +92 142 +92 145 +92 146 +92 147 +92 151 +92 152 +92 157 +92 158 +92 161 +92 164 +92 165 +92 168 +92 169 +92 173 +92 175 +92 176 +92 178 +92 179 +92 182 +92 183 +92 184 +92 187 +92 188 +92 193 +92 196 +92 201 +92 202 +92 204 +92 206 +92 208 +92 213 +92 215 +92 218 +92 219 +92 220 +92 221 +92 222 +92 223 +92 230 +92 233 +92 237 +92 238 +92 239 +92 240 +92 243 +92 245 +92 247 +92 248 +92 249 +92 255 +92 257 +92 258 +94 187 +96 187 +97 134 +97 138 +97 139 +97 147 +97 149 +97 153 +97 154 +97 155 +97 156 +97 158 +97 160 +97 162 +97 168 +97 169 +97 170 +97 173 +97 176 +97 177 +97 182 +97 187 +97 189 +97 190 +97 192 +97 193 +97 195 +97 196 +97 198 +97 199 +97 200 +97 204 +97 208 +97 209 +97 210 +97 217 +97 218 +97 225 +97 227 +97 228 +97 233 +97 241 +97 242 +97 245 +97 247 +97 249 +97 252 +99 187 +102 187 +106 187 +108 187 +110 187 +111 187 +113 187 +116 135 +116 137 +116 143 +116 145 +116 148 +116 151 +116 152 +116 155 +116 157 +116 159 +116 166 +116 168 +116 169 +116 172 +116 173 +116 174 +116 176 +116 179 +116 180 +116 185 +116 187 +116 190 +116 192 +116 193 +116 194 +116 195 +116 196 +116 197 +116 199 +116 200 +116 202 +116 208 +116 211 +116 218 +116 221 +116 224 +116 229 +116 233 +116 236 +116 238 +116 240 +116 241 +116 244 +116 245 +116 247 +116 249 +116 251 +116 256 +116 258 +118 187 +122 187 +123 187 +128 187 +129 187 +130 187 +133 187 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/instances/55.gr b/src/githubtests/medium_test_set/instances/55.gr new file mode 100644 index 0000000..38a4025 --- /dev/null +++ b/src/githubtests/medium_test_set/instances/55.gr @@ -0,0 +1,381 @@ +p ocr 174 172 380 +3 197 +13 197 +18 197 +26 197 +29 197 +32 197 +36 197 +45 197 +52 197 +58 197 +62 197 +73 197 +75 197 +79 197 +80 197 +83 197 +87 197 +88 197 +89 176 +89 178 +89 184 +89 186 +89 187 +89 189 +89 191 +89 192 +89 197 +89 203 +89 210 +89 211 +89 213 +89 214 +89 215 +89 216 +89 221 +89 223 +89 227 +89 228 +89 231 +89 238 +89 240 +89 252 +89 253 +89 255 +89 257 +89 264 +89 265 +89 271 +89 272 +89 274 +89 280 +89 281 +89 284 +89 285 +89 288 +89 289 +89 290 +89 292 +89 296 +89 299 +89 300 +89 301 +89 303 +89 305 +89 315 +89 323 +89 324 +89 325 +89 326 +89 332 +89 336 +89 341 +89 344 +89 346 +92 197 +93 197 +94 197 +96 197 +98 197 +104 175 +104 179 +104 186 +104 187 +104 188 +104 194 +104 196 +104 197 +104 202 +104 216 +104 217 +104 221 +104 228 +104 241 +104 250 +104 253 +104 258 +104 259 +104 266 +104 267 +104 273 +104 275 +104 277 +104 280 +104 282 +104 285 +104 286 +104 291 +104 292 +104 295 +104 297 +104 303 +104 304 +104 305 +104 307 +104 310 +104 311 +104 319 +104 321 +104 329 +104 334 +104 341 +104 343 +104 344 +105 197 +107 197 +108 177 +108 178 +108 180 +108 188 +108 189 +108 190 +108 191 +108 193 +108 197 +108 203 +108 204 +108 213 +108 215 +108 218 +108 222 +108 224 +108 225 +108 230 +108 232 +108 241 +108 242 +108 249 +108 259 +108 260 +108 266 +108 270 +108 273 +108 274 +108 276 +108 280 +108 284 +108 290 +108 294 +108 299 +108 300 +108 309 +108 310 +108 312 +108 313 +108 314 +108 316 +108 319 +108 321 +108 322 +108 330 +108 333 +108 341 +108 345 +108 346 +109 197 +112 197 +113 178 +113 183 +113 184 +113 189 +113 190 +113 198 +113 204 +113 206 +113 208 +113 216 +113 217 +113 219 +113 225 +113 235 +113 237 +113 239 +113 241 +113 243 +113 244 +113 248 +113 253 +113 254 +113 258 +113 262 +113 263 +113 265 +113 266 +113 268 +113 269 +113 272 +113 274 +113 275 +113 279 +113 281 +113 283 +113 284 +113 285 +113 289 +113 293 +113 301 +113 307 +113 309 +113 314 +113 317 +113 318 +113 325 +113 329 +113 334 +113 340 +113 341 +113 344 +120 197 +124 197 +125 197 +128 197 +132 197 +138 197 +139 176 +139 177 +139 180 +139 186 +139 191 +139 193 +139 195 +139 197 +139 199 +139 200 +139 201 +139 208 +139 210 +139 216 +139 224 +139 225 +139 226 +139 229 +139 230 +139 233 +139 241 +139 255 +139 263 +139 266 +139 273 +139 276 +139 279 +139 281 +139 286 +139 295 +139 298 +139 300 +139 306 +139 309 +139 311 +139 319 +139 323 +139 326 +139 327 +139 329 +139 337 +139 338 +139 339 +139 341 +139 346 +141 197 +144 197 +145 197 +146 197 +147 197 +149 197 +152 197 +154 197 +155 197 +156 175 +156 180 +156 185 +156 192 +156 198 +156 200 +156 204 +156 206 +156 207 +156 208 +156 216 +156 224 +156 225 +156 226 +156 227 +156 228 +156 229 +156 232 +156 234 +156 235 +156 240 +156 244 +156 245 +156 257 +156 268 +156 272 +156 279 +156 282 +156 284 +156 285 +156 291 +156 296 +156 297 +156 299 +156 305 +156 306 +156 311 +156 316 +156 317 +156 331 +156 332 +156 336 +156 341 +156 342 +161 197 +167 179 +167 187 +167 190 +167 194 +167 197 +167 198 +167 200 +167 211 +167 212 +167 215 +167 222 +167 224 +167 230 +167 232 +167 236 +167 240 +167 246 +167 250 +167 251 +167 256 +167 261 +167 278 +167 279 +167 280 +167 284 +167 287 +167 288 +167 290 +167 293 +167 294 +167 298 +167 303 +167 305 +167 306 +167 314 +167 316 +167 318 +167 323 +167 325 +167 330 +167 332 +167 335 +167 339 +167 341 +167 342 +167 343 +168 197 +171 197 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/instances/56.gr b/src/githubtests/medium_test_set/instances/56.gr new file mode 100644 index 0000000..04f0668 --- /dev/null +++ b/src/githubtests/medium_test_set/instances/56.gr @@ -0,0 +1,505 @@ +p ocr 235 224 504 +1 427 +2 314 +2 356 +3 407 +3 427 +4 356 +4 427 +5 311 +5 356 +6 356 +7 427 +10 356 +10 427 +12 407 +14 311 +14 427 +15 311 +16 356 +18 407 +20 314 +20 407 +21 311 +21 407 +24 407 +26 407 +30 311 +31 356 +31 407 +32 407 +35 314 +39 356 +40 311 +40 314 +40 356 +40 407 +43 314 +43 427 +44 356 +46 311 +47 311 +49 236 +49 244 +49 246 +49 247 +49 255 +49 256 +49 263 +49 268 +49 269 +49 283 +49 287 +49 298 +49 299 +49 301 +49 310 +49 320 +49 337 +49 338 +49 347 +49 355 +49 358 +49 375 +49 376 +49 377 +49 381 +49 390 +49 396 +49 398 +49 399 +49 400 +49 401 +49 402 +49 404 +49 407 +49 409 +49 413 +49 416 +49 422 +49 424 +49 429 +49 435 +49 445 +49 446 +49 449 +49 457 +51 314 +52 356 +53 427 +55 311 +55 427 +56 314 +56 356 +56 427 +57 356 +58 356 +58 407 +58 427 +59 311 +59 427 +60 311 +60 314 +60 356 +61 427 +64 311 +66 311 +66 407 +66 427 +67 356 +68 314 +68 427 +69 311 +70 311 +71 427 +73 427 +74 311 +75 239 +75 243 +75 244 +75 252 +75 254 +75 258 +75 264 +75 271 +75 273 +75 279 +75 287 +75 289 +75 290 +75 291 +75 292 +75 296 +75 298 +75 300 +75 306 +75 307 +75 309 +75 312 +75 313 +75 319 +75 322 +75 323 +75 343 +75 345 +75 346 +75 350 +75 353 +75 354 +75 356 +75 378 +75 382 +75 389 +75 391 +75 392 +75 399 +75 400 +75 407 +75 416 +75 420 +75 421 +75 431 +75 440 +75 441 +75 445 +75 447 +75 450 +75 454 +75 457 +75 459 +77 427 +78 311 +79 311 +79 314 +80 314 +80 356 +81 314 +81 407 +82 311 +84 314 +84 407 +84 427 +85 427 +86 407 +88 314 +94 356 +94 427 +95 356 +96 407 +96 427 +97 314 +97 427 +98 427 +99 356 +100 356 +100 407 +101 427 +102 240 +102 244 +102 256 +102 264 +102 265 +102 271 +102 287 +102 299 +102 304 +102 315 +102 316 +102 320 +102 334 +102 338 +102 343 +102 348 +102 352 +102 356 +102 363 +102 364 +102 366 +102 369 +102 370 +102 372 +102 382 +102 392 +102 400 +102 406 +102 419 +102 421 +102 430 +102 431 +102 432 +102 439 +102 444 +102 447 +102 451 +102 454 +102 458 +102 459 +103 356 +103 427 +106 356 +106 427 +110 356 +110 407 +111 427 +112 427 +113 314 +113 356 +116 356 +116 407 +117 314 +117 407 +121 314 +121 427 +122 311 +124 314 +127 356 +128 407 +128 427 +129 314 +129 427 +130 407 +131 427 +133 314 +133 356 +134 356 +136 314 +136 407 +137 311 +137 314 +139 356 +139 427 +140 311 +140 407 +141 311 +141 314 +142 407 +143 311 +143 356 +146 311 +147 407 +149 356 +150 314 +150 407 +151 407 +153 314 +153 427 +154 427 +155 311 +156 356 +157 356 +158 311 +158 314 +158 407 +159 407 +159 427 +160 314 +160 407 +161 356 +161 407 +162 311 +162 314 +162 427 +163 427 +165 311 +167 356 +168 427 +170 407 +173 314 +176 427 +177 314 +178 314 +178 407 +178 427 +179 311 +179 407 +179 427 +181 427 +185 356 +185 407 +189 311 +190 311 +190 407 +192 314 +192 356 +193 311 +194 314 +195 356 +197 311 +197 427 +198 311 +198 314 +198 407 +198 427 +199 427 +200 407 +200 427 +201 314 +203 240 +203 245 +203 247 +203 251 +203 254 +203 281 +203 298 +203 306 +203 310 +203 319 +203 320 +203 325 +203 333 +203 337 +203 347 +203 352 +203 357 +203 359 +203 365 +203 367 +203 369 +203 381 +203 383 +203 385 +203 387 +203 401 +203 403 +203 404 +203 407 +203 412 +203 417 +203 419 +203 426 +203 432 +203 437 +203 438 +203 439 +203 440 +203 442 +203 447 +203 456 +206 427 +207 311 +207 427 +208 356 +209 314 +210 407 +211 356 +212 314 +213 311 +213 356 +214 311 +214 356 +215 356 +216 311 +216 356 +217 240 +217 248 +217 263 +217 269 +217 273 +217 276 +217 282 +217 292 +217 295 +217 296 +217 299 +217 305 +217 307 +217 318 +217 319 +217 324 +217 328 +217 335 +217 340 +217 347 +217 351 +217 352 +217 356 +217 358 +217 363 +217 365 +217 371 +217 373 +217 380 +217 382 +217 395 +217 396 +217 397 +217 405 +217 406 +217 407 +217 410 +217 411 +217 414 +217 423 +217 424 +217 428 +217 430 +217 431 +217 434 +217 440 +217 446 +217 447 +217 449 +217 458 +218 314 +218 407 +218 427 +220 356 +221 356 +222 407 +222 427 +223 407 +225 407 +225 427 +228 427 +229 251 +229 258 +229 270 +229 280 +229 281 +229 282 +229 285 +229 294 +229 307 +229 308 +229 309 +229 314 +229 318 +229 320 +229 336 +229 340 +229 349 +229 352 +229 355 +229 356 +229 357 +229 358 +229 361 +229 365 +229 373 +229 384 +229 389 +229 392 +229 395 +229 400 +229 403 +229 405 +229 409 +229 412 +229 418 +229 430 +229 432 +229 434 +229 437 +229 448 +229 449 +229 450 +229 452 +229 453 +229 458 +230 311 +230 407 +230 427 +231 311 +231 314 +232 427 +233 356 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/instances/57.gr b/src/githubtests/medium_test_set/instances/57.gr new file mode 100644 index 0000000..fe8984e --- /dev/null +++ b/src/githubtests/medium_test_set/instances/57.gr @@ -0,0 +1,592 @@ +p ocr 260 279 591 +1 312 +1 394 +1 446 +1 522 +3 265 +3 403 +3 522 +4 403 +4 535 +5 522 +6 394 +6 477 +7 265 +8 446 +9 477 +10 491 +11 522 +12 312 +13 312 +13 394 +14 403 +14 446 +14 481 +15 265 +15 446 +15 477 +17 265 +17 481 +19 522 +20 265 +20 477 +22 403 +22 491 +23 263 +23 269 +23 271 +23 281 +23 283 +23 286 +23 288 +23 293 +23 299 +23 300 +23 301 +23 329 +23 331 +23 344 +23 352 +23 355 +23 359 +23 365 +23 371 +23 390 +23 392 +23 394 +23 396 +23 399 +23 402 +23 411 +23 420 +23 423 +23 425 +23 426 +23 443 +23 446 +23 449 +23 453 +23 455 +23 457 +23 464 +23 473 +23 476 +23 477 +23 480 +23 484 +23 485 +23 491 +23 495 +23 499 +23 510 +23 533 +24 481 +24 535 +25 535 +26 403 +27 394 +28 312 +28 535 +30 312 +30 446 +31 403 +32 394 +32 403 +32 491 +33 266 +33 274 +33 275 +33 276 +33 278 +33 285 +33 287 +33 288 +33 296 +33 301 +33 305 +33 332 +33 333 +33 342 +33 348 +33 353 +33 356 +33 357 +33 359 +33 363 +33 368 +33 370 +33 371 +33 377 +33 394 +33 399 +33 401 +33 403 +33 405 +33 436 +33 442 +33 446 +33 449 +33 452 +33 453 +33 460 +33 464 +33 473 +33 475 +33 477 +33 485 +33 488 +33 491 +33 504 +33 505 +33 507 +33 518 +33 529 +33 530 +33 535 +33 536 +34 403 +36 265 +36 491 +38 446 +39 403 +39 477 +39 535 +40 446 +41 403 +42 446 +42 491 +43 522 +44 477 +44 491 +44 535 +45 403 +46 394 +46 491 +48 312 +49 312 +49 394 +49 481 +49 522 +50 403 +50 481 +50 535 +51 394 +52 312 +52 403 +52 477 +52 481 +53 481 +55 394 +56 265 +56 312 +56 446 +58 312 +58 535 +59 265 +59 403 +60 312 +60 491 +60 535 +61 312 +61 394 +61 522 +62 265 +62 491 +64 265 +64 312 +64 522 +65 446 +66 312 +66 477 +66 491 +66 535 +67 265 +67 312 +67 394 +67 491 +67 535 +68 477 +68 481 +68 491 +69 403 +69 522 +70 312 +70 522 +71 265 +71 312 +72 403 +73 312 +73 403 +76 446 +76 535 +77 394 +77 446 +78 446 +78 522 +79 394 +79 522 +79 535 +81 403 +83 491 +85 491 +86 312 +86 522 +87 312 +87 446 +87 481 +88 446 +88 522 +89 265 +89 477 +89 491 +89 535 +90 477 +90 491 +91 394 +91 403 +92 265 +92 481 +92 522 +93 446 +93 522 +94 522 +96 265 +96 491 +98 265 +98 535 +99 312 +99 522 +99 535 +100 481 +101 265 +101 394 +101 403 +102 312 +102 394 +102 477 +102 535 +103 403 +103 535 +104 394 +105 403 +105 535 +106 446 +106 535 +107 446 +108 535 +109 265 +109 312 +109 491 +110 265 +110 312 +110 491 +112 265 +112 394 +112 477 +112 522 +113 403 +114 477 +114 522 +115 277 +115 281 +115 283 +115 301 +115 308 +115 315 +115 321 +115 332 +115 336 +115 341 +115 342 +115 355 +115 359 +115 366 +115 368 +115 371 +115 381 +115 383 +115 396 +115 397 +115 399 +115 403 +115 410 +115 414 +115 419 +115 422 +115 423 +115 426 +115 428 +115 442 +115 443 +115 454 +115 456 +115 465 +115 470 +115 479 +115 483 +115 491 +115 509 +115 512 +115 513 +115 517 +115 520 +115 523 +115 525 +115 537 +116 535 +117 394 +118 394 +118 477 +119 265 +119 477 +120 403 +121 535 +122 446 +122 481 +123 312 +125 394 +126 446 +126 477 +126 522 +127 265 +127 477 +128 522 +129 535 +130 312 +130 491 +131 403 +132 312 +132 477 +132 481 +133 535 +134 312 +134 535 +135 522 +137 265 +139 394 +139 491 +140 265 +141 265 +141 312 +142 312 +143 403 +143 477 +144 403 +144 481 +148 312 +148 394 +148 403 +148 491 +149 394 +149 403 +149 491 +149 535 +150 403 +151 535 +152 394 +152 446 +153 265 +153 403 +155 403 +155 491 +156 394 +156 481 +157 403 +158 265 +158 394 +160 265 +160 403 +160 481 +161 265 +161 446 +163 477 +164 446 +165 477 +165 491 +165 535 +166 491 +167 491 +168 394 +168 491 +169 477 +169 535 +170 265 +170 403 +170 491 +170 535 +171 394 +172 312 +172 394 +172 403 +172 535 +173 394 +173 481 +174 312 +174 394 +174 446 +174 477 +174 522 +175 403 +175 535 +176 312 +176 481 +176 535 +177 481 +178 535 +179 265 +179 403 +179 535 +180 403 +181 265 +181 312 +182 535 +183 265 +183 481 +183 491 +184 446 +184 477 +185 265 +185 394 +185 522 +187 394 +187 535 +188 522 +189 446 +189 477 +189 481 +190 312 +190 446 +190 481 +190 491 +191 394 +191 403 +192 394 +192 403 +192 477 +192 522 +193 394 +194 265 +194 477 +195 446 +196 394 +197 446 +197 491 +198 265 +199 312 +199 394 +202 394 +202 491 +204 491 +204 522 +205 312 +205 403 +206 265 +206 394 +208 394 +208 535 +209 477 +209 491 +209 522 +210 265 +210 477 +210 491 +210 522 +212 446 +212 481 +212 491 +213 265 +213 491 +214 265 +214 481 +215 394 +215 403 +215 477 +215 491 +215 522 +216 535 +217 477 +218 312 +218 481 +219 312 +219 522 +221 477 +221 535 +222 477 +223 446 +224 522 +225 265 +225 446 +225 522 +226 312 +226 491 +226 535 +227 446 +228 312 +228 394 +228 403 +229 265 +229 491 +230 265 +231 481 +231 491 +231 535 +232 535 +233 394 +233 535 +235 394 +235 491 +235 522 +236 535 +237 265 +237 394 +237 477 +237 481 +237 535 +238 403 +239 312 +239 394 +239 446 +239 522 +240 403 +240 535 +241 265 +242 491 +243 481 +244 265 +244 394 +244 446 +244 477 +244 481 +244 535 +245 491 +245 535 +246 481 +247 394 +247 477 +248 522 +249 394 +249 446 +250 446 +250 477 +251 312 +251 477 +251 522 +252 481 +252 522 +253 477 +253 522 +254 477 +254 491 +254 535 +255 394 +255 446 +255 481 +256 403 +257 312 +258 403 +258 477 +258 491 +258 522 +259 481 +259 522 +260 265 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/instances/58.gr b/src/githubtests/medium_test_set/instances/58.gr new file mode 100644 index 0000000..2f3c675 --- /dev/null +++ b/src/githubtests/medium_test_set/instances/58.gr @@ -0,0 +1,49 @@ +p ocr 13 24 48 +1 30 +1 32 +1 34 +2 19 +2 28 +2 36 +3 16 +3 19 +3 21 +3 22 +3 23 +3 24 +3 26 +3 29 +3 31 +3 32 +3 35 +3 37 +4 17 +4 21 +4 34 +5 15 +5 25 +5 26 +6 14 +6 16 +6 30 +7 15 +7 20 +7 22 +8 17 +8 27 +8 31 +9 18 +9 33 +9 37 +10 18 +10 27 +10 35 +11 23 +11 25 +11 36 +12 14 +12 24 +12 28 +13 20 +13 29 +13 33 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/instances/59.gr b/src/githubtests/medium_test_set/instances/59.gr new file mode 100644 index 0000000..ccf9c75 --- /dev/null +++ b/src/githubtests/medium_test_set/instances/59.gr @@ -0,0 +1,65 @@ +p ocr 17 32 64 +1 37 +1 43 +1 49 +2 23 +2 35 +2 45 +3 36 +3 38 +3 46 +4 23 +4 25 +4 44 +5 33 +5 34 +5 44 +6 39 +6 47 +6 48 +7 19 +7 21 +7 35 +8 28 +8 37 +8 38 +9 24 +9 26 +9 40 +10 21 +10 22 +10 25 +10 27 +10 28 +10 29 +10 31 +10 32 +10 34 +10 39 +10 40 +10 41 +10 42 +10 43 +10 45 +10 46 +11 20 +11 27 +11 48 +12 20 +12 24 +12 31 +13 22 +13 30 +13 47 +14 19 +14 30 +14 32 +15 26 +15 29 +15 36 +16 18 +16 33 +16 42 +17 18 +17 41 +17 49 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/instances/6.gr b/src/githubtests/medium_test_set/instances/6.gr new file mode 100644 index 0000000..702bf8d --- /dev/null +++ b/src/githubtests/medium_test_set/instances/6.gr @@ -0,0 +1,295 @@ +p ocr 143 152 294 +1 250 +1 271 +2 156 +2 278 +3 222 +3 232 +3 237 +3 259 +3 263 +4 162 +7 188 +7 255 +7 261 +7 265 +7 285 +10 157 +10 187 +10 287 +11 170 +11 172 +11 294 +14 288 +16 223 +17 161 +17 211 +19 220 +19 242 +20 173 +20 176 +20 192 +20 252 +20 254 +25 175 +25 203 +25 279 +26 193 +28 262 +29 190 +33 177 +33 218 +33 238 +33 274 +33 275 +33 284 +33 286 +34 179 +35 149 +35 225 +35 282 +36 158 +36 169 +36 184 +36 253 +37 246 +39 151 +39 236 +39 292 +41 281 +42 215 +42 216 +42 293 +43 144 +43 180 +43 183 +43 227 +43 258 +43 264 +43 269 +44 205 +47 174 +47 208 +48 159 +48 249 +50 166 +50 248 +50 276 +52 168 +52 241 +55 201 +56 207 +57 160 +64 181 +64 235 +70 224 +71 167 +73 244 +78 186 +78 233 +78 280 +80 182 +80 239 +82 231 +83 260 +84 209 +84 226 +84 251 +84 257 +84 295 +85 230 +87 199 +87 202 +87 221 +88 150 +89 153 +89 206 +92 148 +92 194 +93 189 +93 217 +95 146 +96 195 +96 212 +97 289 +100 229 +101 152 +101 163 +101 178 +102 185 +105 165 +106 243 +107 191 +107 256 +107 273 +108 266 +108 267 +110 198 +110 228 +111 219 +111 283 +112 204 +113 147 +113 196 +113 210 +113 214 +114 240 +116 171 +121 272 +122 200 +126 213 +127 245 +127 277 +130 145 +130 197 +130 247 +130 290 +131 155 +131 270 +131 291 +139 154 +139 234 +139 268 +142 164 +79 146 +80 146 +93 148 +89 150 +90 153 +91 153 +92 153 +21 155 +117 155 +132 155 +133 155 +135 155 +136 155 +138 155 +139 155 +11 157 +37 158 +49 159 +121 159 +26 160 +58 160 +59 160 +60 160 +61 160 +62 160 +18 161 +19 161 +71 162 +143 164 +106 165 +122 166 +39 167 +12 170 +13 170 +14 170 +50 171 +118 171 +119 171 +120 171 +134 171 +48 174 +102 178 +36 179 +75 179 +103 185 +105 185 +125 185 +96 186 +78 189 +94 189 +104 190 +124 190 +126 190 +64 193 +5 196 +115 196 +116 196 +111 198 +29 200 +56 201 +88 202 +113 204 +22 205 +23 205 +24 205 +25 205 +57 207 +97 212 +127 213 +112 219 +17 223 +114 224 +76 225 +77 225 +95 225 +28 227 +101 229 +86 230 +87 230 +83 231 +65 235 +66 235 +67 235 +68 235 +69 235 +70 235 +7 236 +4 237 +81 239 +82 239 +72 240 +73 240 +40 241 +54 241 +55 241 +20 242 +107 243 +35 244 +74 244 +6 246 +38 246 +41 246 +53 246 +2 250 +85 251 +44 252 +84 260 +8 261 +9 261 +10 261 +30 262 +31 262 +32 262 +33 262 +123 262 +109 267 +110 267 +140 268 +141 268 +142 268 +51 272 +52 272 +108 273 +128 277 +129 277 +130 277 +3 278 +43 279 +63 279 +42 281 +34 286 +15 288 +16 288 +98 289 +99 289 +100 289 +131 290 +27 293 +45 293 +46 293 +47 293 +137 293 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/instances/60.gr b/src/githubtests/medium_test_set/instances/60.gr new file mode 100644 index 0000000..35db436 --- /dev/null +++ b/src/githubtests/medium_test_set/instances/60.gr @@ -0,0 +1,289 @@ +p ocr 121 144 288 +1 205 +2 220 +3 126 +3 177 +3 205 +4 132 +5 135 +6 124 +7 185 +8 165 +9 175 +10 257 +11 123 +11 136 +11 208 +12 195 +13 125 +13 234 +13 251 +14 252 +15 201 +16 182 +16 191 +16 203 +17 232 +18 245 +19 192 +20 134 +21 162 +22 255 +23 133 +24 152 +25 153 +26 241 +27 238 +28 204 +29 247 +30 124 +30 173 +30 175 +31 167 +32 248 +33 181 +34 137 +35 170 +36 151 +37 177 +38 143 +39 141 +40 194 +40 226 +40 263 +41 141 +41 187 +41 254 +42 259 +43 231 +44 148 +45 217 +46 174 +46 260 +46 265 +47 176 +48 197 +49 155 +50 218 +51 129 +52 182 +53 254 +54 264 +55 159 +56 253 +57 223 +58 237 +59 212 +60 144 +61 145 +61 216 +61 230 +62 235 +63 154 +64 265 +65 169 +66 162 +66 228 +66 257 +67 154 +67 157 +67 242 +68 196 +68 225 +68 237 +69 242 +70 194 +71 150 +72 136 +73 262 +74 208 +75 163 +76 152 +76 201 +76 261 +77 227 +78 206 +79 127 +79 198 +79 238 +80 122 +80 130 +80 147 +80 156 +80 158 +80 161 +80 168 +80 178 +80 179 +80 186 +80 188 +80 193 +80 199 +80 209 +80 210 +80 215 +80 219 +80 221 +80 224 +80 233 +80 236 +80 239 +80 243 +80 258 +81 160 +81 172 +81 189 +82 202 +82 211 +82 232 +83 140 +84 149 +85 174 +86 184 +87 250 +88 214 +89 125 +90 211 +91 164 +92 138 +93 246 +94 240 +95 225 +96 249 +97 256 +98 195 +98 244 +98 247 +99 153 +99 213 +99 217 +100 145 +101 146 +102 172 +103 234 +104 171 +105 200 +106 128 +107 165 +107 176 +107 190 +108 139 +109 160 +110 183 +111 216 +112 191 +113 166 +113 169 +113 185 +114 142 +114 149 +114 227 +115 184 +115 206 +115 207 +116 131 +117 180 +118 226 +119 157 +120 144 +120 222 +120 253 +121 204 +121 229 +121 231 +23 122 +14 123 +108 126 +91 127 +27 128 +15 129 +105 130 +111 131 +17 132 +6 133 +118 134 +39 135 +37 137 +102 138 +84 139 +21 140 +22 142 +10 143 +72 146 +32 147 +90 148 +112 150 +69 151 +103 155 +19 156 +71 158 +56 159 +101 161 +85 163 +109 164 +87 166 +95 167 +94 168 +89 170 +63 171 +5 173 +33 178 +48 179 +8 180 +78 181 +12 183 +73 186 +18 187 +49 188 +42 189 +59 190 +77 192 +50 193 +35 196 +1 197 +36 198 +97 199 +119 200 +83 202 +55 203 +44 207 +62 209 +57 210 +74 212 +20 213 +24 214 +75 215 +53 218 +92 219 +65 220 +106 221 +34 222 +29 223 +26 224 +2 228 +116 229 +51 230 +4 233 +28 235 +38 236 +88 239 +100 240 +45 241 +96 243 +93 244 +25 245 +86 246 +70 248 +60 249 +9 250 +117 251 +43 252 +58 255 +47 256 +31 258 +52 259 +110 260 +54 261 +7 262 +104 263 +64 264 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/instances/7.gr b/src/githubtests/medium_test_set/instances/7.gr new file mode 100644 index 0000000..3423bb4 --- /dev/null +++ b/src/githubtests/medium_test_set/instances/7.gr @@ -0,0 +1,459 @@ +p ocr 244 215 458 +1 439 +1 457 +2 297 +2 346 +5 298 +6 262 +6 426 +7 270 +7 289 +7 326 +7 334 +7 397 +8 412 +8 459 +9 281 +9 349 +9 449 +10 348 +11 375 +17 437 +18 357 +20 269 +20 274 +20 288 +21 312 +22 263 +23 399 +30 360 +30 382 +30 423 +31 458 +35 296 +37 286 +37 434 +43 273 +43 354 +44 311 +44 453 +47 401 +49 446 +49 451 +52 323 +52 385 +53 359 +57 280 +57 301 +57 392 +58 250 +58 366 +59 300 +59 335 +59 410 +60 290 +61 352 +61 406 +62 266 +62 427 +64 284 +68 417 +74 245 +74 246 +74 285 +74 305 +74 327 +74 364 +74 387 +74 442 +75 279 +75 413 +77 333 +77 419 +80 255 +81 309 +82 415 +83 249 +84 431 +85 291 +85 414 +87 317 +91 336 +93 275 +93 316 +93 321 +94 378 +94 436 +95 302 +95 391 +97 377 +100 337 +102 268 +102 350 +103 315 +103 331 +104 276 +110 343 +111 303 +112 418 +116 454 +117 379 +119 308 +119 363 +120 248 +121 355 +122 265 +123 260 +123 345 +123 351 +124 254 +126 330 +129 369 +129 400 +131 253 +134 372 +134 455 +135 272 +135 339 +137 264 +137 287 +139 381 +139 398 +139 421 +141 304 +141 313 +141 338 +141 424 +144 373 +144 383 +146 282 +146 411 +147 306 +148 448 +149 394 +149 433 +152 319 +154 320 +155 283 +155 403 +159 380 +160 277 +160 404 +161 261 +161 341 +161 425 +161 429 +165 258 +165 267 +165 432 +166 344 +167 328 +167 361 +168 365 +172 247 +172 367 +172 440 +173 271 +173 384 +173 389 +173 435 +173 438 +174 252 +175 314 +175 422 +178 318 +178 386 +178 428 +178 430 +181 256 +183 332 +183 402 +183 407 +185 257 +186 293 +189 251 +189 390 +190 353 +191 447 +192 294 +194 376 +196 393 +197 409 +204 259 +205 278 +205 452 +206 307 +207 325 +209 299 +209 444 +215 356 +215 443 +216 322 +216 358 +217 292 +217 324 +217 329 +217 408 +217 416 +217 456 +218 340 +227 368 +229 362 +231 450 +232 347 +232 388 +235 295 +236 310 +236 342 +236 374 +236 405 +238 396 +238 441 +238 445 +242 420 +243 370 +243 371 +244 395 +74 247 +121 248 +73 249 +170 249 +171 249 +173 249 +175 252 +132 253 +133 253 +147 253 +125 254 +126 254 +127 254 +128 254 +81 255 +182 256 +183 256 +186 257 +155 259 +124 260 +7 262 +23 263 +65 264 +217 264 +154 265 +200 265 +201 265 +202 265 +203 265 +63 266 +64 266 +207 267 +103 268 +8 270 +174 271 +44 273 +94 275 +9 276 +41 276 +105 276 +106 276 +108 276 +109 276 +58 280 +112 281 +142 281 +78 282 +149 282 +198 282 +156 283 +157 283 +158 283 +159 283 +216 284 +38 286 +39 286 +40 286 +42 286 +43 286 +107 286 +21 288 +61 290 +86 291 +87 291 +218 292 +187 293 +188 293 +189 293 +193 294 +194 294 +166 295 +36 296 +37 296 +6 298 +137 299 +210 299 +211 299 +212 299 +213 299 +214 299 +96 302 +97 302 +144 303 +176 303 +111 304 +135 306 +236 307 +82 309 +237 310 +238 310 +45 311 +46 311 +47 311 +22 312 +150 314 +177 314 +178 314 +88 317 +89 317 +90 317 +91 317 +153 319 +204 319 +205 320 +66 322 +67 322 +68 322 +167 325 +129 330 +104 331 +92 336 +93 336 +140 337 +141 337 +134 339 +191 340 +219 340 +220 340 +221 340 +222 340 +223 340 +10 343 +208 344 +209 344 +3 346 +5 346 +241 346 +206 347 +233 347 +234 347 +11 348 +62 352 +192 353 +224 353 +123 355 +199 355 +19 357 +20 357 +54 359 +55 359 +56 359 +57 359 +83 361 +143 361 +230 362 +231 362 +120 363 +75 364 +151 365 +152 365 +59 366 +228 368 +229 368 +130 369 +131 369 +244 371 +145 373 +146 373 +12 375 +13 375 +14 375 +15 375 +16 375 +17 375 +195 376 +196 376 +26 377 +98 377 +99 377 +101 377 +102 377 +118 379 +119 379 +160 380 +31 382 +53 385 +190 390 +197 393 +168 394 +114 396 +239 396 +240 396 +242 396 +27 398 +28 398 +29 398 +30 398 +24 399 +25 399 +139 399 +48 401 +49 401 +184 402 +185 402 +161 404 +148 409 +60 410 +110 412 +76 413 +77 413 +84 415 +169 415 +69 417 +70 417 +71 417 +72 417 +172 417 +4 418 +113 418 +115 418 +116 418 +79 419 +80 419 +136 419 +243 420 +179 428 +180 428 +181 428 +162 429 +163 429 +164 429 +165 429 +85 431 +95 436 +18 437 +2 439 +100 443 +138 443 +225 447 +226 447 +227 447 +122 448 +232 450 +50 451 +51 451 +52 451 +235 452 +117 454 +215 455 +32 458 +33 458 +34 458 +35 458 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/instances/8.gr b/src/githubtests/medium_test_set/instances/8.gr new file mode 100644 index 0000000..2218e88 --- /dev/null +++ b/src/githubtests/medium_test_set/instances/8.gr @@ -0,0 +1,654 @@ +p ocr 346 308 653 +1 401 +1 630 +1 633 +2 356 +4 391 +4 577 +4 608 +4 632 +9 366 +9 469 +12 527 +13 532 +18 379 +19 563 +19 599 +19 620 +22 442 +22 547 +22 647 +24 489 +24 541 +27 462 +27 466 +27 635 +27 636 +27 643 +29 479 +29 480 +30 436 +30 441 +33 560 +36 460 +36 618 +38 365 +38 511 +40 402 +40 472 +40 485 +40 496 +40 567 +40 623 +45 504 +49 405 +49 476 +49 594 +53 424 +53 555 +53 597 +54 512 +56 454 +57 411 +58 364 +58 604 +60 562 +60 576 +61 538 +61 550 +63 361 +63 570 +63 650 +64 501 +66 407 +66 478 +66 559 +69 457 +72 500 +72 528 +74 368 +74 586 +76 375 +78 351 +78 471 +78 473 +78 494 +78 610 +79 397 +79 497 +82 509 +90 450 +90 452 +91 517 +92 614 +94 569 +94 619 +96 390 +96 505 +96 584 +96 596 +101 626 +105 548 +106 642 +107 369 +107 385 +107 492 +107 631 +109 490 +109 537 +110 355 +110 551 +113 349 +113 398 +113 421 +113 438 +113 645 +114 382 +115 431 +120 448 +121 475 +121 585 +123 554 +126 433 +128 459 +128 523 +129 581 +136 400 +137 481 +140 617 +144 363 +144 508 +147 373 +147 392 +148 399 +148 470 +149 482 +149 483 +150 525 +151 568 +152 362 +153 393 +153 412 +153 627 +155 484 +158 414 +159 601 +160 557 +161 370 +165 409 +167 377 +167 435 +167 583 +169 445 +169 488 +169 616 +170 410 +170 518 +170 549 +170 595 +171 380 +171 593 +171 628 +171 641 +172 499 +172 640 +175 542 +179 434 +180 520 +180 612 +181 404 +181 444 +182 430 +182 654 +183 495 +184 378 +188 603 +192 598 +195 374 +195 403 +195 539 +197 526 +197 644 +198 381 +198 418 +198 429 +198 535 +198 600 +198 639 +199 359 +199 455 +199 522 +200 416 +201 439 +201 613 +201 638 +202 624 +203 423 +203 575 +205 651 +207 358 +208 422 +208 521 +209 352 +209 556 +209 605 +217 566 +221 413 +221 513 +221 531 +221 533 +224 432 +224 486 +224 506 +225 514 +226 524 +228 465 +228 653 +233 609 +236 388 +237 637 +238 376 +239 384 +239 564 +240 357 +240 387 +240 571 +241 396 +241 447 +241 552 +243 367 +243 606 +245 458 +246 579 +247 408 +247 464 +247 467 +247 493 +249 453 +251 634 +252 354 +254 621 +259 428 +259 503 +259 543 +261 591 +262 347 +262 395 +262 546 +263 510 +264 590 +265 646 +266 648 +268 360 +268 426 +268 625 +269 350 +269 437 +269 456 +274 451 +279 386 +279 425 +281 443 +281 553 +282 622 +285 574 +286 427 +286 498 +287 353 +287 420 +287 474 +290 502 +290 572 +290 587 +295 383 +298 491 +305 371 +305 545 +307 544 +307 649 +311 468 +311 652 +314 589 +316 449 +317 578 +318 588 +319 487 +320 602 +323 372 +323 389 +323 558 +324 515 +324 530 +324 540 +324 629 +325 406 +325 419 +325 440 +325 519 +326 415 +329 417 +329 536 +334 477 +334 561 +337 573 +337 582 +337 611 +338 534 +338 565 +339 463 +339 516 +339 615 +340 446 +341 507 +344 461 +346 348 +346 394 +346 529 +346 580 +346 592 +346 607 +346 347 +264 348 +157 353 +288 353 +290 353 +150 354 +4 356 +271 356 +338 358 +153 362 +39 365 +40 365 +75 368 +76 368 +108 369 +109 369 +27 370 +162 370 +163 370 +164 370 +306 371 +307 371 +196 374 +197 374 +77 375 +78 375 +239 376 +185 378 +311 378 +57 379 +115 382 +296 383 +297 383 +298 383 +241 387 +237 388 +324 389 +182 390 +5 391 +6 391 +7 391 +8 391 +13 391 +148 392 +114 398 +149 399 +137 400 +41 402 +42 402 +43 402 +45 402 +216 402 +97 404 +183 404 +28 409 +29 409 +58 411 +154 412 +156 412 +158 412 +289 412 +335 412 +159 414 +168 415 +169 415 +116 416 +211 416 +212 416 +213 416 +215 416 +217 416 +273 416 +44 417 +72 417 +330 417 +332 417 +167 419 +73 423 +126 423 +280 425 +281 425 +269 426 +287 427 +155 428 +260 428 +98 430 +99 430 +100 430 +101 430 +117 431 +118 431 +119 431 +120 431 +331 431 +225 432 +206 433 +337 433 +180 434 +327 435 +328 435 +329 435 +3 437 +214 437 +270 437 +272 437 +274 437 +31 441 +32 441 +33 441 +170 445 +146 446 +147 446 +121 448 +317 449 +91 450 +275 451 +276 451 +277 451 +278 451 +279 451 +235 453 +251 453 +19 454 +201 455 +210 455 +233 457 +246 458 +38 460 +47 460 +263 461 +345 461 +70 465 +229 465 +231 465 +232 465 +234 465 +236 465 +250 465 +293 465 +309 466 +326 466 +248 467 +249 467 +133 469 +134 469 +135 469 +136 469 +50 476 +51 476 +52 476 +53 476 +261 477 +67 478 +68 478 +69 478 +30 480 +138 481 +139 481 +140 481 +151 483 +253 483 +262 484 +320 487 +25 489 +26 489 +165 489 +110 490 +299 491 +300 491 +301 491 +302 491 +303 491 +304 491 +305 491 +79 494 +184 495 +80 497 +81 497 +82 497 +173 499 +174 499 +175 499 +334 500 +65 501 +66 501 +285 504 +342 507 +343 507 +344 507 +340 508 +83 509 +84 509 +85 509 +86 509 +87 509 +88 509 +89 509 +90 509 +18 512 +55 512 +226 514 +92 517 +171 518 +209 521 +129 523 +205 524 +254 525 +14 527 +15 527 +16 527 +56 527 +132 527 +166 527 +325 530 +222 531 +223 531 +224 531 +10 532 +11 532 +12 532 +339 534 +199 535 +176 542 +177 542 +178 542 +179 542 +17 544 +186 544 +308 544 +310 544 +312 544 +313 544 +314 544 +106 548 +62 550 +63 550 +111 551 +112 551 +113 551 +242 552 +243 552 +282 553 +124 554 +125 554 +127 554 +128 554 +227 554 +54 555 +200 556 +161 557 +34 560 +35 560 +36 560 +20 563 +21 563 +22 563 +240 564 +218 566 +219 566 +220 566 +221 566 +152 568 +95 569 +96 569 +64 570 +48 574 +49 574 +189 574 +61 576 +318 578 +247 579 +9 581 +130 581 +131 581 +208 582 +122 585 +123 585 +230 587 +291 587 +292 587 +294 587 +295 587 +319 588 +315 589 +316 589 +265 590 +207 591 +336 591 +193 598 +194 598 +195 598 +160 601 +321 602 +322 602 +323 602 +37 603 +190 603 +191 603 +192 603 +59 604 +60 604 +244 606 +245 606 +71 609 +74 609 +204 609 +333 609 +181 612 +93 614 +94 614 +145 615 +341 615 +141 617 +142 617 +143 617 +144 617 +255 621 +256 621 +257 621 +258 621 +259 621 +46 622 +283 622 +284 622 +286 622 +203 624 +102 626 +103 626 +104 626 +105 626 +2 633 +252 634 +238 637 +202 638 +172 641 +107 642 +198 644 +266 646 +23 647 +24 647 +267 648 +268 648 +228 651 +187 652 +188 652 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/instances/9.gr b/src/githubtests/medium_test_set/instances/9.gr new file mode 100644 index 0000000..bedb895 --- /dev/null +++ b/src/githubtests/medium_test_set/instances/9.gr @@ -0,0 +1,719 @@ +p ocr 375 344 718 +1 616 +1 617 +4 498 +4 628 +6 642 +7 639 +10 419 +10 483 +10 601 +13 432 +13 590 +14 711 +15 401 +15 641 +15 682 +16 713 +17 547 +17 587 +18 409 +18 509 +18 598 +19 445 +20 581 +20 619 +22 418 +23 528 +24 505 +25 550 +26 404 +26 507 +26 588 +29 646 +32 457 +35 533 +36 476 +36 490 +36 545 +36 656 +37 562 +39 452 +40 400 +42 570 +42 695 +43 571 +45 595 +46 709 +49 379 +49 532 +51 411 +51 451 +51 657 +51 677 +53 446 +55 491 +57 423 +59 708 +60 448 +61 412 +62 489 +62 500 +62 512 +63 717 +64 609 +66 416 +66 599 +66 690 +66 706 +67 475 +68 503 +68 714 +69 499 +70 606 +70 719 +74 430 +75 406 +75 468 +75 471 +75 480 +75 523 +75 627 +76 397 +77 688 +78 548 +79 382 +79 426 +79 607 +80 383 +80 605 +81 398 +81 541 +82 625 +83 376 +85 444 +85 539 +86 495 +87 496 +88 529 +88 546 +88 679 +91 453 +91 493 +91 653 +92 425 +92 633 +94 506 +94 594 +95 649 +98 513 +100 645 +101 462 +101 484 +101 567 +101 643 +102 585 +102 696 +103 399 +103 542 +103 559 +103 579 +104 394 +105 591 +105 667 +108 634 +109 537 +109 613 +110 387 +110 488 +112 392 +112 608 +112 638 +112 664 +113 518 +114 536 +114 577 +114 586 +114 654 +116 552 +116 670 +117 684 +118 631 +120 456 +120 573 +120 600 +120 640 +121 565 +122 674 +123 710 +128 589 +129 436 +130 485 +133 521 +134 386 +135 459 +135 698 +136 408 +136 486 +136 597 +140 473 +140 692 +151 424 +154 413 +154 699 +156 524 +156 614 +159 596 +160 604 +161 447 +165 410 +165 703 +166 661 +166 694 +168 377 +168 687 +168 712 +168 715 +170 629 +170 675 +171 665 +172 569 +175 443 +175 504 +175 553 +175 666 +176 582 +177 390 +179 515 +181 464 +181 497 +181 555 +190 558 +191 433 +191 543 +195 442 +196 385 +196 650 +199 522 +203 435 +203 466 +203 564 +203 635 +207 701 +208 592 +213 470 +215 531 +216 501 +219 685 +220 527 +222 560 +224 689 +225 612 +228 428 +229 479 +231 574 +232 472 +232 540 +234 623 +236 441 +237 624 +238 618 +243 508 +243 644 +243 672 +248 626 +249 610 +250 389 +251 396 +251 407 +251 697 +254 439 +258 651 +258 671 +265 630 +265 652 +266 381 +267 683 +267 716 +268 534 +270 458 +270 693 +273 544 +273 663 +276 538 +277 561 +277 647 +278 391 +281 440 +281 519 +284 622 +290 568 +290 575 +292 636 +293 384 +294 530 +296 659 +296 676 +298 705 +299 388 +299 525 +301 549 +301 554 +301 584 +303 535 +305 658 +305 668 +306 437 +306 463 +306 478 +306 576 +306 718 +307 502 +307 678 +308 378 +308 465 +308 477 +308 680 +309 632 +310 380 +317 421 +317 691 +318 686 +322 702 +329 487 +329 566 +329 660 +330 580 +331 395 +332 429 +332 603 +333 655 +335 417 +335 454 +335 520 +335 572 +335 669 +337 405 +341 461 +341 681 +345 438 +345 482 +347 516 +347 563 +349 420 +351 602 +352 414 +352 526 +352 556 +352 578 +352 621 +352 673 +352 700 +355 415 +355 450 +355 481 +355 593 +355 615 +358 402 +358 517 +358 704 +359 583 +361 611 +362 494 +362 620 +364 474 +364 492 +364 510 +365 427 +365 637 +365 662 +366 393 +367 403 +367 449 +367 460 +367 467 +367 469 +367 514 +367 557 +367 707 +370 422 +371 431 +371 434 +371 455 +371 511 +371 551 +371 648 +288 376 +289 376 +290 376 +59 377 +50 379 +51 379 +112 380 +311 380 +34 381 +262 381 +269 381 +270 381 +42 383 +198 383 +295 384 +296 384 +323 384 +41 385 +197 385 +220 385 +135 386 +111 387 +113 387 +312 387 +252 389 +253 389 +254 389 +287 389 +178 390 +179 390 +279 391 +280 391 +281 391 +63 393 +105 394 +332 395 +78 397 +124 397 +81 400 +236 401 +27 404 +28 404 +171 404 +249 405 +338 405 +339 405 +354 405 +166 410 +62 412 +155 413 +156 413 +23 418 +208 419 +350 420 +351 420 +318 421 +371 422 +58 423 +60 423 +346 423 +152 424 +153 424 +154 424 +40 426 +366 427 +229 428 +75 430 +193 433 +194 433 +195 433 +344 433 +130 436 +91 439 +255 439 +256 439 +213 441 +196 442 +87 444 +145 444 +20 445 +54 446 +55 446 +162 447 +163 447 +164 447 +165 447 +61 448 +64 449 +356 450 +357 450 +358 450 +80 452 +33 457 +268 457 +136 459 +110 465 +238 470 +86 473 +141 473 +142 473 +143 473 +144 473 +68 475 +149 479 +231 479 +169 482 +170 482 +102 484 +131 485 +132 485 +133 485 +137 486 +138 486 +139 486 +140 486 +367 489 +56 491 +57 491 +365 492 +146 495 +147 495 +199 495 +88 496 +182 497 +183 497 +251 497 +11 498 +209 498 +210 498 +211 498 +212 498 +237 498 +70 499 +217 501 +218 501 +219 501 +109 502 +69 503 +25 505 +95 506 +244 508 +245 508 +246 508 +247 508 +248 508 +372 511 +373 511 +374 511 +375 511 +99 513 +100 513 +180 515 +181 515 +348 516 +349 516 +114 518 +282 519 +283 519 +284 519 +134 521 +150 522 +151 522 +230 522 +76 523 +300 525 +301 525 +4 527 +200 527 +201 527 +202 527 +204 527 +205 527 +206 527 +321 527 +24 528 +47 530 +324 530 +325 530 +326 530 +328 530 +329 530 +216 531 +37 533 +240 533 +35 534 +304 535 +305 535 +277 538 +233 540 +234 540 +38 541 +84 541 +85 541 +184 541 +104 542 +89 546 +90 546 +257 546 +265 546 +79 548 +26 550 +191 558 +223 560 +224 560 +278 561 +172 562 +122 565 +330 566 +291 568 +292 568 +39 569 +43 570 +44 571 +45 571 +232 574 +307 576 +115 577 +116 577 +331 580 +177 582 +360 583 +361 583 +302 584 +303 584 +18 587 +129 589 +14 590 +12 592 +13 592 +46 595 +160 596 +19 598 +352 602 +333 603 +161 604 +71 606 +72 606 +73 606 +74 606 +313 608 +314 608 +315 608 +316 608 +317 608 +65 609 +66 609 +168 610 +192 610 +342 610 +343 610 +362 611 +226 612 +227 612 +228 612 +309 613 +157 614 +158 614 +159 614 +2 616 +3 616 +207 616 +36 618 +239 618 +21 619 +22 619 +363 620 +364 620 +340 621 +353 621 +355 621 +83 622 +285 622 +286 622 +15 623 +214 624 +215 624 +173 625 +174 625 +175 625 +148 626 +250 626 +29 629 +119 631 +121 631 +235 631 +310 632 +266 633 +308 634 +322 635 +293 636 +8 639 +9 639 +10 639 +16 640 +7 642 +101 645 +82 646 +96 649 +97 649 +98 649 +93 652 +94 652 +258 653 +334 655 +335 655 +241 656 +242 656 +243 656 +52 657 +53 657 +274 663 +275 663 +276 663 +30 665 +32 665 +259 665 +176 666 +106 667 +107 667 +108 667 +306 668 +117 669 +118 670 +336 670 +31 671 +260 671 +261 671 +267 671 +123 674 +297 676 +298 676 +221 681 +222 681 +92 683 +263 683 +264 683 +337 684 +341 685 +203 686 +320 686 +369 686 +125 688 +126 688 +127 688 +128 688 +225 689 +271 693 +272 693 +273 693 +167 694 +345 694 +103 696 +185 697 +186 697 +187 697 +188 697 +189 697 +190 697 +5 701 +6 701 +294 702 +359 704 +299 705 +67 706 +347 708 +48 709 +49 709 +327 709 +77 710 +120 711 +17 713 +319 717 +368 717 +370 717 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/solutions/1.sol b/src/githubtests/medium_test_set/solutions/1.sol new file mode 100644 index 0000000..1e70dab --- /dev/null +++ b/src/githubtests/medium_test_set/solutions/1.sol @@ -0,0 +1,122 @@ +193 +258 +256 +255 +254 +253 +252 +251 +250 +249 +248 +247 +246 +245 +244 +243 +242 +241 +240 +239 +238 +237 +236 +235 +234 +233 +232 +231 +230 +229 +228 +227 +226 +225 +224 +223 +222 +221 +220 +219 +218 +217 +216 +215 +214 +213 +212 +211 +210 +209 +208 +207 +206 +205 +204 +203 +202 +201 +200 +199 +198 +197 +196 +195 +194 +192 +191 +190 +189 +188 +187 +186 +185 +184 +183 +182 +181 +180 +179 +178 +177 +176 +175 +174 +173 +172 +171 +170 +169 +168 +167 +166 +165 +164 +163 +162 +161 +160 +159 +158 +157 +156 +155 +154 +153 +152 +151 +150 +149 +148 +147 +146 +145 +144 +143 +142 +141 +140 +139 +138 +137 +257 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/solutions/10.sol b/src/githubtests/medium_test_set/solutions/10.sol new file mode 100644 index 0000000..2f48efa --- /dev/null +++ b/src/githubtests/medium_test_set/solutions/10.sol @@ -0,0 +1,333 @@ +672 +507 +603 +652 +606 +604 +487 +593 +491 +548 +716 +655 +590 +541 +458 +490 +522 +477 +444 +409 +690 +689 +510 +427 +397 +651 +608 +545 +476 +426 +677 +682 +709 +667 +457 +629 +588 +483 +579 +440 +518 +607 +484 +433 +627 +418 +717 +395 +680 +411 +424 +406 +721 +520 +461 +713 +658 +412 +570 +562 +498 +691 +467 +569 +508 +403 +497 +505 +704 +573 +571 +543 +473 +437 +446 +454 +710 +436 +614 +583 +492 +399 +663 +609 +602 +421 +698 +666 +521 +572 +723 +635 +581 +619 +560 +533 +452 +419 +632 +542 +495 +555 +662 +415 +509 +695 +506 +536 +720 +642 +640 +637 +596 +524 +589 +660 +650 +410 +489 +550 +512 +435 +462 +684 +493 +402 +479 +430 +621 +455 +661 +703 +618 +482 +448 +685 +625 +405 +568 +546 +525 +718 +540 +538 +648 +620 +705 +669 +639 +638 +623 +587 +719 +683 +544 +646 +668 +401 +598 +552 +459 +478 +697 +475 +534 +420 +494 +532 +726 +503 +502 +551 +657 +613 +434 +464 +645 +601 +630 +700 +558 +439 +413 +678 +699 +557 +501 +469 +722 +673 +654 +595 +712 +686 +580 +447 +670 +432 +575 +456 +659 +565 +563 +451 +693 +585 +553 +611 +474 +485 +664 +488 +523 +665 +537 +707 +617 +577 +574 +414 +408 +612 +527 +470 +687 +445 +394 +594 +706 +584 +714 +460 +400 +559 +519 +605 +530 +468 +679 +702 +631 +615 +511 +471 +592 +715 +610 +513 +528 +692 +676 +674 +539 +514 +561 +564 +656 +500 +681 +438 +425 +671 +582 +526 +641 +465 +653 +711 +556 +450 +443 +466 +616 +396 +675 +624 +554 +628 +597 +696 +463 +694 +724 +453 +404 +407 +549 +535 +422 +517 +567 +566 +515 +472 +431 +725 +622 +578 +441 +442 +496 +531 +429 +449 +486 +529 +647 +576 +708 +398 +636 +626 +688 +644 +591 +649 +701 +480 +423 +516 +633 +600 +481 +599 +416 +547 +504 +499 +643 +634 +586 +428 +417 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/solutions/11.sol b/src/githubtests/medium_test_set/solutions/11.sol new file mode 100644 index 0000000..4d836af --- /dev/null +++ b/src/githubtests/medium_test_set/solutions/11.sol @@ -0,0 +1,464 @@ +842 +756 +450 +456 +808 +750 +600 +626 +858 +431 +630 +747 +712 +682 +599 +578 +545 +528 +548 +496 +648 +837 +671 +440 +798 +770 +598 +526 +850 +776 +722 +659 +458 +815 +853 +840 +582 +549 +449 +779 +521 +658 +803 +765 +519 +447 +554 +484 +843 +532 +520 +499 +824 +577 +834 +796 +694 +653 +820 +621 +534 +730 +713 +797 +839 +472 +775 +758 +565 +550 +652 +852 +701 +633 +500 +606 +446 +463 +522 +445 +455 +787 +745 +862 +724 +514 +848 +683 +432 +540 +847 +786 +478 +832 +703 +686 +602 +442 +546 +489 +495 +822 +816 +465 +688 +618 +576 +746 +744 +569 +524 +512 +595 +743 +859 +841 +705 +571 +553 +580 +413 +800 +668 +510 +471 +835 +727 +788 +785 +473 +497 +454 +426 +623 +854 +678 +634 +828 +679 +617 +506 +561 +487 +583 +536 +622 +836 +802 +438 +846 +597 +562 +681 +498 +474 +774 +783 +751 +436 +742 +655 +860 +789 +741 +604 +734 +636 +423 +592 +855 +443 +640 +421 +539 +502 +494 +467 +593 +433 +420 +416 +414 +737 +470 +717 +482 +792 +844 +768 +696 +453 +728 +564 +669 +684 +651 +585 +736 +807 +589 +559 +523 +430 +620 +624 +772 +763 +677 +721 +435 +607 +693 +614 +476 +533 +769 +650 +511 +814 +720 +695 +587 +817 +601 +615 +619 +475 +610 +697 +863 +760 +444 +799 +795 +708 +647 +672 +481 +488 +643 +625 +831 +646 +612 +541 +530 +871 +725 +466 +838 +628 +660 +422 +754 +452 +867 +771 +753 +719 +632 +503 +635 +627 +685 +762 +557 +665 +527 +411 +849 +857 +829 +570 +759 +704 +513 +851 +868 +542 +869 +778 +707 +529 +715 +706 +872 +493 +830 +781 +572 +594 +766 +508 +459 +825 +700 +821 +657 +641 +866 +791 +586 +566 +613 +560 +777 +709 +538 +434 +419 +638 +609 +573 +629 +861 +680 +670 +656 +485 +462 +427 +689 +516 +711 +674 +552 +464 +749 +412 +811 +424 +531 +417 +865 +579 +790 +543 +479 +856 +486 +731 +813 +492 +568 +448 +504 +662 +556 +870 +805 +675 +833 +429 +801 +755 +515 +691 +714 +757 +748 +611 +563 +468 +687 +735 +555 +437 +409 +702 +864 +784 +773 +525 +477 +826 +767 +699 +649 +483 +654 +733 +782 +537 +692 +664 +631 +596 +457 +461 +793 +667 +806 +729 +718 +639 +603 +480 +469 +810 +558 +642 +827 +616 +794 +698 +418 +723 +644 +425 +661 +818 +460 +590 +567 +428 +415 +410 +605 +505 +764 +439 +823 +845 +819 +809 +716 +710 +645 +509 +501 +491 +752 +804 +518 +490 +666 +517 +451 +673 +738 +637 +739 +676 +544 +584 +588 +551 +732 +761 +690 +507 +591 +780 +575 +726 +608 +441 +535 +812 +574 +740 +547 +663 +581 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/solutions/12.sol b/src/githubtests/medium_test_set/solutions/12.sol new file mode 100644 index 0000000..2530a45 --- /dev/null +++ b/src/githubtests/medium_test_set/solutions/12.sol @@ -0,0 +1,124 @@ +171 +147 +228 +178 +177 +126 +114 +198 +204 +151 +145 +167 +220 +219 +173 +125 +191 +183 +158 +143 +112 +218 +196 +161 +154 +136 +188 +123 +117 +115 +130 +166 +118 +200 +210 +165 +203 +187 +172 +153 +144 +142 +230 +192 +190 +113 +160 +127 +222 +163 +201 +133 +157 +212 +229 +109 +179 +169 +134 +175 +155 +122 +181 +131 +231 +211 +225 +174 +120 +184 +221 +206 +193 +168 +141 +186 +223 +189 +110 +137 +209 +138 +207 +176 +217 +164 +156 +150 +139 +132 +124 +111 +227 +224 +197 +194 +205 +180 +159 +148 +119 +226 +135 +152 +116 +140 +216 +185 +199 +214 +208 +195 +149 +129 +170 +146 +121 +232 +213 +182 +215 +202 +128 +162 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/solutions/13.sol b/src/githubtests/medium_test_set/solutions/13.sol new file mode 100644 index 0000000..91554ca --- /dev/null +++ b/src/githubtests/medium_test_set/solutions/13.sol @@ -0,0 +1,175 @@ +246 +243 +324 +309 +244 +269 +214 +188 +333 +250 +327 +304 +332 +253 +299 +198 +177 +213 +222 +234 +205 +190 +168 +302 +267 +185 +287 +202 +209 +308 +232 +263 +233 +228 +337 +334 +270 +259 +277 +264 +169 +251 +241 +247 +318 +192 +245 +208 +316 +175 +325 +220 +296 +280 +290 +297 +340 +248 +215 +181 +261 +313 +217 +276 +216 +306 +294 +256 +330 +338 +298 +282 +224 +265 +230 +187 +237 +240 +182 +257 +320 +286 +197 +210 +212 +329 +319 +268 +293 +236 +219 +174 +305 +221 +279 +239 +274 +176 +292 +331 +266 +211 +231 +242 +200 +311 +289 +271 +166 +184 +303 +218 +301 +335 +310 +262 +170 +291 +229 +225 +167 +252 +173 +207 +339 +206 +203 +317 +238 +321 +322 +323 +235 +249 +183 +223 +179 +186 +258 +227 +199 +195 +284 +326 +314 +295 +194 +172 +201 +328 +300 +278 +255 +283 +272 +226 +180 +178 +254 +260 +191 +336 +273 +196 +275 +307 +189 +171 +285 +288 +315 +312 +193 +281 +204 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/solutions/14.sol b/src/githubtests/medium_test_set/solutions/14.sol new file mode 100644 index 0000000..177c60b --- /dev/null +++ b/src/githubtests/medium_test_set/solutions/14.sol @@ -0,0 +1,286 @@ +342 +289 +505 +573 +560 +493 +450 +432 +525 +472 +386 +427 +358 +401 +299 +364 +534 +458 +456 +415 +503 +404 +319 +527 +563 +452 +436 +403 +379 +359 +316 +304 +313 +382 +398 +508 +474 +487 +357 +296 +448 +520 +498 +391 +552 +417 +482 +411 +556 +438 +402 +305 +490 +543 +390 +341 +349 +395 +335 +343 +541 +362 +546 +416 +399 +397 +481 +565 +368 +303 +535 +557 +485 +375 +385 +421 +406 +566 +371 +488 +405 +412 +539 +314 +479 +333 +545 +321 +459 +369 +429 +442 +327 +420 +483 +423 +444 +501 +323 +418 +326 +572 +540 +495 +309 +388 +449 +310 +320 +537 +297 +530 +522 +553 +554 +376 +533 +523 +453 +354 +512 +294 +542 +424 +461 +489 +351 +332 +290 +431 +428 +318 +365 +413 +345 +344 +462 +497 +384 +307 +515 +334 +370 +551 +562 +381 +366 +360 +396 +499 +435 +544 +325 +538 +467 +306 +518 +514 +550 +486 +471 +443 +433 +400 +392 +446 +454 +430 +532 +465 +419 +475 +477 +468 +564 +507 +329 +311 +380 +510 +312 +394 +425 +513 +426 +361 +492 +407 +302 +437 +455 +517 +464 +322 +338 +516 +519 +353 +350 +339 +447 +506 +378 +526 +547 +352 +330 +469 +440 +298 +372 +292 +549 +414 +295 +409 +500 +496 +340 +387 +473 +389 +315 +317 +574 +331 +439 +470 +393 +570 +567 +559 +531 +347 +377 +536 +441 +521 +367 +478 +300 +466 +291 +480 +555 +408 +410 +293 +445 +308 +561 +569 +484 +422 +336 +356 +528 +463 +337 +502 +568 +374 +373 +348 +524 +494 +346 +571 +529 +491 +457 +301 +558 +451 +511 +383 +548 +363 +355 +504 +460 +324 +509 +476 +328 +434 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/solutions/15.sol b/src/githubtests/medium_test_set/solutions/15.sol new file mode 100644 index 0000000..6606aad --- /dev/null +++ b/src/githubtests/medium_test_set/solutions/15.sol @@ -0,0 +1,54 @@ +83 +56 +101 +98 +62 +71 +57 +105 +88 +76 +68 +58 +87 +69 +73 +93 +90 +91 +79 +95 +92 +59 +96 +70 +74 +66 +103 +78 +60 +77 +80 +102 +100 +63 +99 +89 +72 +84 +106 +55 +85 +67 +82 +108 +94 +64 +104 +61 +75 +97 +65 +107 +86 +81 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/solutions/16.sol b/src/githubtests/medium_test_set/solutions/16.sol new file mode 100644 index 0000000..f791d19 --- /dev/null +++ b/src/githubtests/medium_test_set/solutions/16.sol @@ -0,0 +1,86 @@ +151 +153 +114 +123 +163 +149 +150 +146 +162 +111 +164 +138 +160 +140 +171 +129 +139 +157 +112 +134 +158 +115 +156 +143 +121 +102 +155 +92 +118 +172 +137 +145 +169 +117 +88 +122 +141 +103 +109 +87 +154 +147 +106 +131 +152 +94 +91 +170 +95 +159 +105 +93 +110 +119 +161 +113 +90 +127 +98 +130 +116 +101 +107 +135 +89 +148 +108 +104 +120 +99 +132 +125 +142 +126 +136 +100 +133 +144 +124 +97 +165 +167 +168 +96 +166 +128 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/solutions/17.sol b/src/githubtests/medium_test_set/solutions/17.sol new file mode 100644 index 0000000..2e2086f --- /dev/null +++ b/src/githubtests/medium_test_set/solutions/17.sol @@ -0,0 +1,114 @@ +193 +201 +170 +177 +142 +167 +173 +165 +162 +128 +190 +181 +220 +133 +183 +223 +200 +147 +191 +163 +168 +184 +140 +208 +122 +139 +195 +126 +176 +172 +186 +141 +154 +124 +224 +118 +187 +228 +196 +144 +156 +206 +217 +131 +115 +132 +125 +185 +155 +116 +143 +222 +136 +194 +135 +178 +121 +216 +212 +138 +218 +199 +219 +134 +159 +227 +188 +164 +151 +117 +225 +146 +169 +120 +198 +204 +213 +150 +189 +211 +207 +182 +119 +130 +175 +157 +202 +215 +180 +127 +171 +226 +145 +205 +209 +152 +192 +214 +158 +129 +161 +197 +153 +160 +210 +174 +221 +137 +149 +148 +203 +166 +179 +123 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/solutions/18.sol b/src/githubtests/medium_test_set/solutions/18.sol new file mode 100644 index 0000000..14e2abe --- /dev/null +++ b/src/githubtests/medium_test_set/solutions/18.sol @@ -0,0 +1,123 @@ +266 +241 +240 +183 +182 +180 +176 +169 +168 +179 +173 +170 +162 +158 +174 +171 +181 +163 +172 +157 +153 +167 +165 +155 +150 +146 +178 +159 +145 +148 +175 +147 +164 +154 +184 +160 +151 +152 +144 +166 +156 +161 +149 +177 +207 +205 +200 +195 +197 +208 +202 +196 +193 +192 +191 +204 +199 +194 +190 +188 +203 +198 +187 +186 +189 +185 +201 +206 +215 +213 +209 +212 +210 +211 +217 +214 +216 +260 +256 +248 +229 +225 +264 +263 +257 +255 +243 +234 +228 +253 +246 +232 +258 +247 +261 +254 +239 +252 +245 +226 +220 +235 +233 +223 +251 +221 +231 +237 +250 +227 +259 +218 +262 +222 +219 +249 +238 +230 +242 +244 +224 +236 +265 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/solutions/19.sol b/src/githubtests/medium_test_set/solutions/19.sol new file mode 100644 index 0000000..47ccf54 --- /dev/null +++ b/src/githubtests/medium_test_set/solutions/19.sol @@ -0,0 +1,139 @@ +243 +228 +222 +194 +176 +162 +182 +166 +181 +161 +158 +157 +183 +175 +163 +159 +153 +180 +170 +165 +193 +192 +187 +160 +191 +154 +189 +186 +167 +146 +150 +178 +169 +184 +149 +151 +177 +171 +190 +152 +156 +168 +164 +148 +188 +147 +185 +179 +172 +174 +155 +173 +195 +201 +197 +206 +209 +199 +204 +203 +196 +200 +198 +207 +208 +202 +205 +210 +236 +217 +216 +239 +230 +227 +226 +237 +211 +234 +232 +218 +242 +224 +240 +229 +241 +220 +235 +213 +215 +233 +214 +212 +219 +225 +221 +238 +231 +223 +248 +258 +251 +249 +257 +253 +247 +244 +261 +259 +255 +246 +260 +256 +250 +262 +245 +252 +254 +274 +267 +269 +263 +266 +275 +276 +270 +265 +278 +272 +279 +273 +277 +282 +281 +284 +264 +280 +283 +271 +268 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/solutions/2.sol b/src/githubtests/medium_test_set/solutions/2.sol new file mode 100644 index 0000000..f7b4deb --- /dev/null +++ b/src/githubtests/medium_test_set/solutions/2.sol @@ -0,0 +1,327 @@ +379 +678 +677 +676 +675 +674 +673 +672 +671 +670 +669 +668 +667 +666 +665 +664 +663 +662 +661 +660 +659 +658 +657 +656 +654 +653 +652 +651 +650 +649 +648 +647 +646 +645 +644 +643 +642 +641 +640 +639 +638 +637 +636 +635 +634 +633 +632 +631 +630 +629 +628 +627 +626 +625 +624 +623 +622 +621 +620 +619 +618 +617 +616 +615 +614 +613 +612 +611 +610 +609 +608 +607 +606 +605 +604 +603 +602 +601 +600 +599 +598 +597 +596 +595 +594 +593 +592 +591 +590 +589 +588 +587 +586 +585 +584 +583 +582 +581 +580 +579 +578 +577 +576 +575 +574 +573 +572 +571 +570 +569 +568 +567 +566 +565 +564 +563 +562 +561 +560 +559 +558 +557 +556 +555 +554 +553 +552 +551 +550 +549 +548 +547 +546 +545 +544 +543 +542 +541 +540 +539 +538 +537 +536 +535 +534 +533 +532 +531 +530 +529 +528 +527 +526 +525 +524 +523 +522 +521 +520 +519 +518 +517 +516 +515 +514 +513 +512 +511 +510 +509 +508 +507 +506 +505 +504 +503 +502 +501 +500 +499 +498 +497 +496 +495 +494 +493 +492 +491 +490 +489 +488 +487 +486 +485 +484 +483 +482 +481 +480 +479 +478 +477 +476 +475 +474 +473 +472 +471 +470 +469 +468 +467 +466 +465 +464 +463 +462 +461 +460 +459 +458 +457 +456 +455 +454 +453 +452 +451 +450 +449 +448 +447 +446 +445 +444 +443 +442 +441 +440 +439 +438 +437 +436 +435 +434 +433 +432 +431 +430 +429 +428 +427 +426 +425 +424 +423 +422 +421 +420 +419 +418 +417 +416 +415 +414 +413 +412 +411 +410 +409 +408 +407 +406 +405 +404 +403 +402 +401 +400 +399 +398 +397 +396 +395 +394 +393 +392 +391 +390 +389 +388 +387 +386 +385 +384 +383 +382 +381 +380 +378 +377 +376 +375 +374 +373 +372 +371 +370 +369 +368 +367 +366 +365 +364 +363 +362 +361 +360 +359 +358 +357 +356 +355 +354 +353 +352 +655 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/solutions/20.sol b/src/githubtests/medium_test_set/solutions/20.sol new file mode 100644 index 0000000..eadc973 --- /dev/null +++ b/src/githubtests/medium_test_set/solutions/20.sol @@ -0,0 +1,181 @@ +354 +344 +202 +201 +204 +208 +206 +207 +205 +209 +203 +213 +222 +220 +227 +219 +210 +226 +215 +224 +223 +218 +216 +217 +212 +211 +228 +214 +225 +221 +271 +263 +253 +235 +237 +257 +234 +272 +268 +262 +255 +242 +233 +269 +247 +240 +270 +249 +246 +236 +266 +264 +244 +265 +260 +245 +243 +229 +248 +238 +259 +232 +230 +256 +239 +267 +258 +251 +252 +250 +231 +254 +241 +287 +309 +290 +303 +299 +280 +310 +283 +296 +295 +275 +294 +304 +306 +301 +293 +284 +274 +289 +286 +302 +291 +279 +282 +307 +273 +308 +278 +292 +276 +285 +277 +298 +281 +297 +288 +300 +305 +333 +320 +319 +337 +326 +314 +311 +353 +352 +349 +331 +330 +321 +357 +329 +325 +313 +348 +342 +336 +335 +356 +341 +318 +315 +312 +332 +322 +347 +346 +339 +334 +350 +358 +317 +351 +338 +327 +324 +316 +345 +355 +323 +343 +328 +359 +373 +372 +363 +378 +380 +376 +368 +371 +360 +377 +364 +366 +367 +361 +374 +381 +369 +362 +375 +379 +370 +365 +340 +261 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/solutions/21.sol b/src/githubtests/medium_test_set/solutions/21.sol new file mode 100644 index 0000000..0982149 --- /dev/null +++ b/src/githubtests/medium_test_set/solutions/21.sol @@ -0,0 +1,101 @@ +190 +165 +163 +160 +150 +146 +143 +141 +138 +127 +125 +121 +118 +124 +120 +116 +115 +114 +113 +108 +107 +103 +96 +102 +101 +128 +123 +106 +104 +100 +99 +93 +92 +91 +90 +112 +122 +111 +94 +119 +105 +97 +95 +126 +110 +117 +109 +98 +129 +145 +140 +135 +132 +149 +147 +139 +137 +152 +151 +148 +142 +134 +133 +130 +144 +136 +131 +182 +185 +168 +161 +155 +179 +175 +189 +166 +154 +164 +184 +177 +187 +170 +178 +169 +167 +153 +176 +156 +181 +172 +171 +174 +183 +162 +188 +180 +157 +173 +159 +158 +186 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/solutions/22.sol b/src/githubtests/medium_test_set/solutions/22.sol new file mode 100644 index 0000000..ef92535 --- /dev/null +++ b/src/githubtests/medium_test_set/solutions/22.sol @@ -0,0 +1,123 @@ +218 +216 +215 +213 +212 +210 +206 +201 +198 +197 +196 +189 +188 +187 +184 +176 +172 +171 +170 +164 +163 +157 +142 +141 +139 +136 +130 +127 +126 +103 +101 +100 +96 +102 +99 +97 +98 +138 +135 +132 +123 +122 +118 +140 +104 +137 +112 +117 +108 +131 +116 +115 +143 +125 +120 +134 +128 +107 +109 +106 +105 +113 +121 +111 +124 +110 +119 +114 +183 +162 +153 +147 +133 +129 +180 +173 +169 +154 +186 +144 +182 +175 +174 +166 +165 +146 +145 +185 +168 +160 +159 +155 +152 +151 +156 +177 +158 +179 +161 +181 +149 +150 +148 +178 +167 +217 +204 +199 +194 +195 +211 +208 +205 +192 +193 +209 +207 +203 +202 +200 +191 +190 +214 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/solutions/23.sol b/src/githubtests/medium_test_set/solutions/23.sol new file mode 100644 index 0000000..ae4749a --- /dev/null +++ b/src/githubtests/medium_test_set/solutions/23.sol @@ -0,0 +1,163 @@ +281 +280 +278 +277 +276 +275 +274 +272 +245 +243 +239 +237 +235 +234 +232 +231 +230 +229 +227 +226 +223 +222 +221 +218 +217 +213 +212 +199 +191 +179 +178 +174 +173 +165 +164 +156 +140 +137 +135 +134 +121 +125 +153 +150 +133 +122 +166 +154 +145 +132 +131 +124 +141 +136 +128 +143 +123 +152 +144 +139 +130 +167 +127 +161 +159 +157 +155 +146 +142 +138 +126 +147 +151 +149 +129 +162 +158 +163 +160 +148 +177 +175 +168 +169 +176 +172 +170 +171 +193 +185 +182 +192 +195 +198 +189 +180 +181 +183 +186 +197 +196 +194 +188 +200 +190 +184 +187 +201 +236 +225 +219 +216 +241 +228 +214 +211 +207 +204 +203 +224 +206 +244 +242 +220 +210 +205 +202 +215 +208 +240 +238 +233 +209 +258 +254 +259 +260 +257 +256 +249 +247 +251 +250 +253 +246 +255 +248 +252 +282 +273 +270 +266 +267 +261 +268 +263 +262 +269 +265 +264 +279 +271 +283 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/solutions/24.sol b/src/githubtests/medium_test_set/solutions/24.sol new file mode 100644 index 0000000..148173a --- /dev/null +++ b/src/githubtests/medium_test_set/solutions/24.sol @@ -0,0 +1,261 @@ +516 +515 +514 +513 +512 +511 +510 +509 +508 +507 +505 +503 +477 +446 +442 +441 +440 +435 +423 +420 +412 +408 +405 +384 +377 +375 +374 +371 +349 +342 +336 +335 +334 +332 +329 +320 +303 +301 +289 +279 +276 +270 +263 +262 +260 +257 +256 +261 +258 +264 +259 +266 +265 +268 +272 +271 +269 +267 +274 +273 +277 +280 +275 +282 +281 +278 +283 +286 +284 +285 +288 +291 +287 +290 +294 +293 +292 +295 +298 +299 +297 +296 +300 +302 +304 +306 +307 +305 +308 +311 +309 +312 +310 +314 +313 +315 +316 +318 +321 +317 +319 +323 +325 +322 +328 +326 +324 +327 +331 +330 +333 +338 +337 +340 +343 +339 +341 +345 +344 +348 +347 +346 +350 +351 +352 +354 +353 +355 +358 +356 +357 +359 +360 +363 +362 +361 +365 +364 +366 +367 +368 +369 +372 +370 +376 +373 +379 +380 +378 +383 +381 +382 +387 +386 +385 +390 +392 +389 +394 +388 +391 +395 +396 +393 +397 +398 +399 +400 +401 +403 +404 +402 +406 +407 +410 +411 +415 +409 +413 +414 +416 +419 +418 +417 +425 +422 +424 +421 +428 +426 +427 +430 +429 +433 +432 +431 +434 +436 +437 +439 +438 +444 +443 +447 +445 +448 +451 +450 +449 +452 +453 +454 +457 +456 +455 +459 +463 +458 +461 +460 +462 +467 +464 +465 +466 +468 +469 +470 +473 +475 +472 +471 +476 +474 +478 +479 +481 +480 +483 +484 +482 +486 +485 +488 +487 +491 +490 +492 +489 +495 +494 +493 +497 +498 +496 +499 +501 +500 +506 +504 +502 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/solutions/25.sol b/src/githubtests/medium_test_set/solutions/25.sol new file mode 100644 index 0000000..4a31d6a --- /dev/null +++ b/src/githubtests/medium_test_set/solutions/25.sol @@ -0,0 +1,254 @@ +538 +293 +289 +292 +290 +294 +296 +295 +297 +299 +298 +301 +300 +302 +303 +305 +304 +306 +307 +308 +309 +311 +310 +312 +313 +315 +317 +316 +319 +314 +322 +320 +318 +324 +323 +328 +321 +326 +332 +329 +327 +333 +330 +336 +334 +337 +335 +338 +340 +339 +341 +343 +342 +346 +344 +348 +347 +350 +349 +351 +352 +354 +353 +358 +355 +356 +357 +359 +360 +361 +363 +365 +364 +362 +366 +367 +368 +371 +370 +372 +369 +377 +375 +373 +376 +374 +380 +379 +378 +385 +384 +382 +381 +386 +392 +390 +394 +389 +393 +395 +396 +398 +397 +402 +399 +400 +401 +404 +406 +408 +407 +405 +410 +409 +411 +414 +415 +413 +417 +416 +418 +419 +420 +422 +421 +424 +427 +423 +426 +428 +429 +430 +431 +432 +434 +433 +435 +437 +436 +439 +441 +440 +442 +444 +443 +447 +445 +450 +446 +449 +451 +448 +453 +454 +458 +455 +456 +460 +459 +464 +462 +463 +461 +465 +467 +468 +470 +469 +471 +472 +473 +474 +476 +475 +477 +480 +479 +478 +481 +483 +482 +485 +486 +484 +493 +490 +489 +488 +491 +492 +494 +495 +498 +496 +497 +500 +499 +501 +502 +505 +503 +504 +507 +506 +508 +509 +510 +511 +512 +513 +514 +515 +516 +517 +519 +518 +520 +523 +521 +526 +527 +522 +524 +525 +530 +531 +528 +529 +532 +534 +533 +535 +536 +537 +539 +540 +541 +487 +466 +457 +452 +438 +425 +412 +403 +391 +388 +387 +383 +345 +331 +325 +291 +288 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/solutions/26.sol b/src/githubtests/medium_test_set/solutions/26.sol new file mode 100644 index 0000000..befd1d8 --- /dev/null +++ b/src/githubtests/medium_test_set/solutions/26.sol @@ -0,0 +1,329 @@ +589 +588 +587 +586 +585 +584 +583 +582 +581 +580 +579 +578 +577 +576 +575 +574 +573 +572 +571 +570 +569 +568 +567 +566 +565 +564 +563 +562 +561 +560 +559 +558 +557 +556 +555 +554 +553 +552 +551 +550 +549 +548 +547 +546 +545 +544 +543 +542 +541 +540 +539 +538 +537 +536 +535 +534 +533 +532 +531 +530 +529 +528 +527 +526 +525 +524 +523 +522 +521 +520 +519 +518 +517 +516 +515 +514 +513 +512 +511 +510 +509 +508 +507 +506 +505 +504 +503 +502 +501 +500 +499 +498 +497 +496 +495 +494 +493 +480 +477 +468 +466 +262 +261 +263 +264 +265 +266 +267 +268 +270 +269 +272 +271 +273 +274 +275 +276 +279 +277 +278 +281 +280 +282 +283 +284 +285 +287 +286 +289 +288 +290 +292 +291 +293 +295 +294 +296 +298 +297 +299 +300 +302 +301 +303 +304 +307 +305 +306 +308 +309 +310 +311 +313 +312 +318 +314 +316 +315 +317 +319 +320 +321 +322 +323 +325 +324 +326 +328 +327 +329 +330 +331 +332 +333 +336 +334 +335 +337 +338 +339 +340 +342 +341 +343 +344 +345 +346 +347 +348 +349 +350 +351 +353 +354 +355 +356 +357 +358 +359 +360 +362 +361 +363 +364 +365 +366 +367 +368 +370 +371 +369 +372 +376 +373 +374 +377 +378 +380 +381 +382 +383 +384 +385 +386 +388 +387 +389 +390 +393 +391 +392 +396 +395 +394 +398 +397 +400 +399 +402 +403 +404 +405 +406 +409 +408 +410 +411 +413 +412 +418 +415 +414 +416 +417 +420 +419 +421 +422 +426 +424 +423 +427 +425 +428 +429 +430 +431 +432 +433 +434 +435 +436 +437 +438 +441 +439 +440 +442 +443 +445 +444 +446 +447 +448 +449 +451 +450 +453 +452 +454 +455 +456 +458 +457 +460 +459 +461 +463 +462 +465 +464 +467 +470 +469 +472 +471 +478 +474 +473 +476 +475 +479 +482 +481 +483 +484 +485 +486 +487 +488 +489 +490 +492 +491 +407 +401 +379 +375 +352 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/solutions/27.sol b/src/githubtests/medium_test_set/solutions/27.sol new file mode 100644 index 0000000..56b2492 --- /dev/null +++ b/src/githubtests/medium_test_set/solutions/27.sol @@ -0,0 +1,72 @@ +110 +124 +89 +140 +132 +139 +134 +123 +105 +135 +122 +100 +90 +116 +106 +76 +92 +101 +144 +73 +115 +74 +80 +142 +107 +131 +114 +112 +109 +130 +103 +82 +128 +77 +119 +102 +96 +104 +117 +141 +129 +113 +138 +83 +94 +143 +111 +86 +99 +108 +127 +133 +81 +95 +87 +120 +93 +136 +126 +79 +84 +121 +98 +137 +97 +125 +78 +88 +75 +118 +85 +91 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/solutions/28.sol b/src/githubtests/medium_test_set/solutions/28.sol new file mode 100644 index 0000000..0ad1576 --- /dev/null +++ b/src/githubtests/medium_test_set/solutions/28.sol @@ -0,0 +1,107 @@ +181 +202 +182 +179 +195 +156 +177 +196 +126 +159 +155 +113 +143 +134 +123 +115 +214 +200 +158 +204 +191 +194 +180 +172 +132 +169 +160 +185 +154 +208 +136 +193 +111 +128 +110 +162 +121 +207 +133 +212 +199 +192 +186 +190 +175 +171 +163 +140 +146 +119 +157 +145 +205 +170 +165 +120 +197 +166 +153 +188 +183 +151 +149 +144 +152 +173 +138 +109 +122 +209 +131 +176 +116 +203 +130 +141 +137 +206 +135 +142 +168 +187 +124 +213 +210 +167 +112 +164 +147 +150 +139 +117 +114 +108 +198 +201 +184 +129 +189 +174 +125 +211 +148 +127 +118 +161 +178 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/solutions/29.sol b/src/githubtests/medium_test_set/solutions/29.sol new file mode 100644 index 0000000..056963a --- /dev/null +++ b/src/githubtests/medium_test_set/solutions/29.sol @@ -0,0 +1,199 @@ +218 +393 +384 +383 +279 +377 +358 +229 +209 +211 +355 +201 +214 +286 +316 +387 +246 +374 +324 +280 +353 +332 +319 +334 +302 +295 +267 +250 +243 +382 +291 +340 +225 +370 +321 +238 +315 +271 +380 +266 +388 +226 +357 +328 +232 +360 +262 +372 +337 +349 +336 +343 +260 +210 +284 +386 +301 +277 +285 +354 +376 +273 +344 +361 +397 +252 +203 +394 +351 +396 +385 +369 +331 +282 +264 +308 +294 +371 +368 +200 +299 +257 +276 +255 +253 +234 +338 +231 +207 +347 +327 +236 +202 +366 +233 +392 +275 +312 +230 +335 +296 +341 +245 +216 +235 +381 +290 +390 +239 +395 +364 +251 +270 +265 +205 +322 +325 +310 +208 +237 +318 +297 +306 +221 +268 +365 +298 +348 +219 +288 +375 +220 +304 +320 +287 +379 +278 +261 +389 +367 +224 +248 +378 +398 +247 +307 +259 +350 +292 +330 +274 +283 +329 +289 +215 +213 +391 +222 +356 +373 +362 +309 +352 +300 +241 +263 +217 +333 +254 +326 +363 +346 +228 +206 +303 +293 +272 +359 +281 +249 +323 +317 +313 +305 +339 +227 +240 +314 +269 +311 +256 +212 +342 +223 +345 +244 +242 +258 +204 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/solutions/3.sol b/src/githubtests/medium_test_set/solutions/3.sol new file mode 100644 index 0000000..6b2dd0c --- /dev/null +++ b/src/githubtests/medium_test_set/solutions/3.sol @@ -0,0 +1,20 @@ +30 +29 +22 +20 +19 +18 +15 +34 +31 +17 +16 +25 +27 +33 +32 +24 +28 +26 +21 +23 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/solutions/30.sol b/src/githubtests/medium_test_set/solutions/30.sol new file mode 100644 index 0000000..dad5a5b --- /dev/null +++ b/src/githubtests/medium_test_set/solutions/30.sol @@ -0,0 +1,92 @@ +172 +96 +131 +183 +167 +163 +129 +145 +135 +177 +103 +97 +110 +137 +130 +109 +179 +113 +127 +118 +157 +154 +128 +105 +101 +165 +153 +126 +116 +99 +111 +182 +117 +147 +174 +168 +136 +155 +107 +148 +171 +122 +123 +106 +166 +102 +180 +112 +159 +134 +124 +169 +141 +152 +119 +138 +164 +160 +108 +104 +151 +150 +184 +158 +120 +100 +175 +170 +146 +142 +139 +121 +143 +115 +162 +181 +125 +132 +173 +149 +133 +144 +114 +98 +93 +178 +140 +95 +94 +156 +161 +176 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/solutions/31.sol b/src/githubtests/medium_test_set/solutions/31.sol new file mode 100644 index 0000000..3cf454b --- /dev/null +++ b/src/githubtests/medium_test_set/solutions/31.sol @@ -0,0 +1,150 @@ +237 +293 +207 +193 +158 +266 +187 +248 +208 +287 +278 +272 +233 +286 +259 +285 +280 +270 +190 +277 +243 +188 +180 +245 +178 +256 +174 +177 +224 +206 +236 +279 +247 +184 +175 +214 +216 +264 +220 +205 +167 +165 +194 +199 +162 +161 +265 +201 +253 +251 +260 +240 +230 +290 +176 +298 +273 +197 +196 +160 +289 +209 +268 +262 +242 +227 +204 +172 +151 +210 +276 +232 +156 +274 +225 +213 +269 +261 +254 +241 +282 +246 +234 +231 +229 +257 +226 +212 +164 +221 +182 +169 +154 +179 +170 +219 +211 +153 +275 +297 +238 +281 +239 +218 +217 +163 +249 +228 +267 +223 +195 +296 +157 +186 +166 +203 +284 +159 +292 +294 +291 +222 +202 +152 +288 +263 +191 +155 +200 +250 +295 +189 +299 +255 +271 +192 +185 +168 +183 +300 +283 +252 +244 +198 +235 +181 +215 +173 +171 +258 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/solutions/32.sol b/src/githubtests/medium_test_set/solutions/32.sol new file mode 100644 index 0000000..7770833 --- /dev/null +++ b/src/githubtests/medium_test_set/solutions/32.sol @@ -0,0 +1,193 @@ +269 +226 +352 +319 +314 +291 +241 +336 +313 +302 +293 +264 +270 +227 +257 +196 +218 +372 +323 +295 +246 +199 +367 +260 +256 +234 +198 +366 +383 +334 +332 +359 +381 +368 +338 +292 +361 +328 +318 +315 +267 +380 +335 +301 +299 +280 +244 +371 +268 +329 +311 +201 +297 +273 +230 +353 +296 +265 +250 +229 +327 +261 +245 +365 +356 +349 +252 +382 +379 +217 +369 +274 +249 +243 +259 +212 +386 +231 +213 +197 +385 +337 +222 +330 +251 +228 +289 +206 +205 +239 +195 +266 +194 +373 +320 +307 +282 +263 +376 +254 +233 +203 +378 +377 +209 +202 +288 +358 +354 +344 +340 +325 +283 +321 +262 +224 +351 +223 +350 +316 +308 +298 +303 +342 +370 +284 +304 +275 +279 +294 +363 +348 +281 +210 +326 +211 +200 +341 +333 +278 +306 +236 +255 +324 +285 +309 +286 +272 +240 +339 +247 +384 +238 +235 +204 +345 +317 +310 +305 +300 +276 +248 +362 +322 +215 +360 +290 +331 +287 +221 +346 +258 +225 +220 +214 +375 +357 +347 +237 +216 +374 +271 +232 +343 +312 +207 +242 +364 +355 +277 +253 +208 +219 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/solutions/33.sol b/src/githubtests/medium_test_set/solutions/33.sol new file mode 100644 index 0000000..bb97320 --- /dev/null +++ b/src/githubtests/medium_test_set/solutions/33.sol @@ -0,0 +1,162 @@ +322 +262 +178 +188 +209 +183 +310 +285 +171 +266 +269 +235 +316 +232 +172 +301 +176 +276 +273 +294 +247 +237 +281 +227 +218 +256 +182 +220 +195 +317 +251 +217 +185 +162 +179 +197 +289 +255 +272 +231 +180 +240 +323 +212 +260 +222 +196 +264 +321 +313 +279 +250 +226 +286 +186 +177 +302 +298 +270 +219 +243 +208 +271 +248 +283 +184 +170 +181 +167 +288 +202 +257 +194 +308 +175 +224 +265 +319 +280 +238 +216 +223 +206 +174 +203 +311 +297 +267 +168 +164 +296 +241 +198 +190 +233 +300 +239 +277 +236 +293 +275 +221 +261 +252 +282 +246 +258 +284 +309 +263 +173 +225 +163 +229 +166 +169 +244 +278 +292 +274 +253 +304 +213 +287 +200 +242 +299 +215 +305 +201 +187 +204 +165 +318 +306 +315 +312 +249 +211 +199 +191 +303 +210 +205 +245 +291 +230 +268 +193 +192 +189 +290 +259 +254 +314 +234 +307 +295 +228 +214 +207 +320 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/solutions/34.sol b/src/githubtests/medium_test_set/solutions/34.sol new file mode 100644 index 0000000..185d837 --- /dev/null +++ b/src/githubtests/medium_test_set/solutions/34.sol @@ -0,0 +1,309 @@ +557 +379 +545 +598 +430 +346 +380 +395 +344 +382 +310 +505 +378 +607 +319 +568 +565 +486 +351 +447 +477 +372 +578 +518 +510 +498 +566 +339 +556 +412 +375 +420 +502 +416 +571 +467 +376 +527 +423 +422 +414 +592 +396 +355 +342 +581 +569 +543 +563 +335 +442 +596 +591 +506 +324 +323 +381 +426 +595 +449 +459 +471 +468 +305 +359 +501 +402 +453 +425 +546 +572 +354 +497 +306 +507 +384 +357 +558 +608 +445 +584 +602 +341 +609 +491 +485 +521 +579 +522 +564 +303 +531 +394 +503 +417 +360 +347 +400 +534 +515 +418 +585 +367 +392 +542 +322 +397 +348 +494 +490 +465 +533 +431 +365 +605 +377 +576 +475 +539 +476 +461 +315 +474 +604 +544 +526 +438 +499 +587 +390 +352 +480 +530 +600 +421 +514 +594 +427 +356 +509 +374 +385 +469 +311 +478 +589 +555 +419 +456 +337 +408 +312 +525 +487 +363 +424 +481 +541 +349 +411 +567 +405 +470 +415 +473 +444 +450 +483 +371 +451 +549 +513 +321 +434 +361 +559 +524 +455 +435 +437 +369 +340 +464 +336 +446 +436 +386 +492 +318 +606 +399 +588 +373 +409 +410 +407 +523 +457 +313 +560 +452 +302 +580 +516 +511 +466 +330 +314 +441 +432 +334 +547 +389 +404 +428 +582 +429 +529 +327 +460 +493 +393 +370 +304 +532 +574 +590 +489 +535 +333 +358 +519 +406 +398 +345 +583 +603 +458 +362 +575 +391 +562 +561 +317 +540 +553 +443 +448 +550 +517 +573 +326 +528 +496 +577 +439 +586 +383 +462 +325 +301 +484 +551 +353 +309 +538 +472 +366 +482 +504 +463 +364 +401 +329 +537 +488 +307 +350 +331 +520 +536 +552 +597 +403 +554 +387 +601 +308 +479 +413 +570 +454 +433 +368 +320 +332 +328 +388 +495 +599 +508 +512 +440 +548 +316 +500 +338 +343 +593 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/solutions/35.sol b/src/githubtests/medium_test_set/solutions/35.sol new file mode 100644 index 0000000..f3631dc --- /dev/null +++ b/src/githubtests/medium_test_set/solutions/35.sol @@ -0,0 +1,384 @@ +410 +759 +561 +646 +549 +546 +484 +763 +721 +621 +580 +559 +751 +423 +568 +553 +618 +761 +633 +551 +461 +542 +520 +708 +404 +623 +525 +664 +760 +713 +723 +676 +699 +451 +638 +743 +634 +439 +527 +455 +668 +437 +733 +555 +407 +502 +537 +411 +653 +682 +601 +535 +396 +485 +483 +481 +591 +705 +724 +595 +514 +585 +445 +581 +690 +685 +741 +433 +421 +680 +418 +579 +764 +416 +693 +692 +711 +603 +674 +640 +531 +393 +610 +541 +467 +687 +686 +667 +594 +412 +715 +607 +739 +612 +642 +406 +698 +662 +744 +402 +510 +532 +454 +500 +720 +544 +684 +533 +540 +499 +666 +768 +515 +562 +556 +593 +400 +757 +669 +604 +588 +679 +625 +444 +765 +742 +707 +706 +611 +736 +457 +753 +657 +417 +428 +629 +756 +552 +557 +613 +732 +573 +567 +452 +775 +719 +543 +622 +652 +504 +480 +769 +487 +554 +624 +399 +647 +605 +473 +398 +478 +453 +512 +631 +511 +409 +571 +413 +734 +673 +517 +424 +677 +774 +431 +606 +456 +569 +394 +465 +442 +754 +526 +522 +670 +617 +529 +397 +446 +430 +722 +702 +490 +658 +694 +704 +678 +643 +528 +626 +592 +475 +637 +566 +700 +468 +589 +536 +432 +401 +660 +459 +771 +494 +731 +635 +435 +703 +408 +712 +547 +727 +441 +434 +675 +463 +755 +695 +495 +776 +586 +582 +545 +663 +655 +458 +709 +644 +714 +745 +728 +609 +740 +429 +572 +506 +440 +587 +486 +710 +563 +730 +496 +518 +583 +614 +766 +422 +558 +476 +403 +509 +650 +651 +501 +627 +752 +748 +466 +492 +469 +716 +539 +530 +521 +608 +671 +498 +683 +508 +656 +426 +681 +482 +513 +645 +395 +615 +497 +578 +565 +438 +471 +570 +405 +726 +479 +488 +564 +523 +443 +772 +427 +534 +737 +584 +701 +414 +415 +560 +491 +450 +460 +750 +672 +749 +598 +696 +577 +636 +767 +747 +773 +762 +477 +770 +602 +550 +574 +641 +689 +718 +449 +735 +691 +648 +619 +505 +630 +474 +425 +519 +516 +688 +503 +717 +659 +596 +436 +447 +628 +448 +420 +524 +489 +649 +697 +464 +576 +729 +493 +738 +575 +639 +548 +620 +507 +597 +665 +599 +758 +616 +419 +725 +600 +538 +746 +470 +661 +632 +462 +654 +472 +590 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/solutions/36.sol b/src/githubtests/medium_test_set/solutions/36.sol new file mode 100644 index 0000000..910165a --- /dev/null +++ b/src/githubtests/medium_test_set/solutions/36.sol @@ -0,0 +1,16 @@ +25 +17 +22 +30 +32 +27 +24 +20 +28 +19 +29 +23 +18 +21 +31 +26 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/solutions/37.sol b/src/githubtests/medium_test_set/solutions/37.sol new file mode 100644 index 0000000..0706388 --- /dev/null +++ b/src/githubtests/medium_test_set/solutions/37.sol @@ -0,0 +1,32 @@ +44 +43 +47 +35 +57 +54 +49 +61 +63 +48 +33 +60 +62 +58 +52 +42 +40 +38 +56 +36 +64 +59 +51 +37 +50 +41 +45 +46 +34 +53 +55 +39 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/solutions/38.sol b/src/githubtests/medium_test_set/solutions/38.sol new file mode 100644 index 0000000..c685758 --- /dev/null +++ b/src/githubtests/medium_test_set/solutions/38.sol @@ -0,0 +1,194 @@ +359 +258 +204 +310 +209 +356 +338 +314 +298 +228 +182 +300 +252 +198 +235 +289 +348 +196 +224 +230 +278 +269 +238 +334 +362 +187 +355 +200 +180 +280 +336 +329 +305 +312 +276 +241 +186 +316 +273 +239 +237 +297 +333 +332 +264 +285 +361 +367 +183 +342 +293 +272 +246 +290 +208 +184 +181 +189 +233 +221 +287 +214 +270 +311 +279 +346 +288 +254 +217 +313 +294 +364 +190 +253 +341 +345 +370 +207 +267 +335 +203 +351 +331 +216 +213 +318 +286 +265 +299 +188 +205 +357 +354 +340 +324 +244 +193 +330 +368 +256 +218 +185 +292 +365 +220 +284 +202 +291 +260 +222 +350 +191 +306 +245 +206 +344 +315 +303 +358 +371 +319 +307 +301 +249 +242 +223 +343 +201 +352 +322 +251 +369 +309 +195 +353 +327 +215 +212 +321 +277 +250 +247 +232 +320 +282 +192 +263 +199 +349 +339 +197 +295 +317 +283 +268 +308 +243 +226 +302 +262 +363 +257 +248 +219 +266 +304 +210 +347 +325 +259 +179 +372 +275 +261 +240 +234 +236 +337 +194 +225 +366 +326 +231 +229 +271 +227 +328 +281 +274 +255 +360 +323 +296 +211 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/solutions/39.sol b/src/githubtests/medium_test_set/solutions/39.sol new file mode 100644 index 0000000..ced8f85 --- /dev/null +++ b/src/githubtests/medium_test_set/solutions/39.sol @@ -0,0 +1,192 @@ +301 +361 +375 +349 +265 +270 +240 +360 +215 +211 +309 +346 +312 +326 +277 +306 +208 +351 +195 +331 +250 +316 +285 +280 +248 +320 +334 +278 +362 +348 +300 +274 +218 +193 +317 +197 +355 +344 +328 +310 +325 +308 +187 +251 +188 +369 +293 +284 +264 +222 +198 +190 +363 +235 +367 +267 +302 +256 +206 +371 +303 +339 +225 +262 +366 +259 +357 +223 +232 +288 +364 +378 +327 +199 +200 +340 +298 +254 +239 +282 +226 +305 +227 +203 +192 +373 +257 +356 +276 +315 +202 +338 +242 +233 +287 +336 +377 +246 +329 +271 +323 +319 +318 +365 +286 +272 +243 +212 +196 +191 +260 +214 +354 +279 +350 +205 +281 +370 +353 +337 +221 +275 +258 +219 +213 +230 +372 +307 +304 +342 +292 +244 +224 +341 +194 +324 +289 +374 +313 +290 +201 +297 +296 +273 +249 +210 +220 +294 +207 +229 +268 +343 +283 +231 +263 +238 +333 +347 +311 +241 +217 +204 +314 +261 +368 +359 +358 +299 +189 +291 +269 +252 +266 +209 +345 +335 +322 +255 +376 +295 +332 +330 +237 +245 +216 +247 +228 +352 +321 +253 +236 +234 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/solutions/4.sol b/src/githubtests/medium_test_set/solutions/4.sol new file mode 100644 index 0000000..2dcb5f8 --- /dev/null +++ b/src/githubtests/medium_test_set/solutions/4.sol @@ -0,0 +1,26 @@ +40 +36 +28 +46 +41 +52 +50 +49 +48 +45 +43 +34 +27 +30 +33 +31 +51 +42 +44 +38 +37 +32 +39 +47 +35 +29 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/solutions/40.sol b/src/githubtests/medium_test_set/solutions/40.sol new file mode 100644 index 0000000..080da10 --- /dev/null +++ b/src/githubtests/medium_test_set/solutions/40.sol @@ -0,0 +1,206 @@ +316 +259 +214 +301 +317 +338 +272 +293 +336 +395 +300 +211 +346 +344 +322 +274 +290 +234 +282 +350 +256 +203 +245 +400 +306 +394 +362 +222 +261 +280 +208 +355 +348 +253 +332 +252 +333 +343 +310 +262 +398 +265 +299 +363 +404 +258 +254 +232 +323 +248 +373 +298 +227 +327 +365 +331 +340 +286 +377 +237 +328 +295 +263 +228 +382 +329 +311 +345 +351 +381 +230 +385 +403 +347 +269 +231 +388 +380 +356 +324 +219 +339 +305 +275 +236 +307 +303 +267 +207 +392 +199 +369 +209 +360 +268 +361 +383 +312 +285 +271 +218 +206 +289 +217 +396 +297 +294 +241 +288 +399 +212 +257 +354 +202 +353 +318 +244 +224 +326 +260 +357 +229 +292 +233 +330 +284 +249 +223 +238 +235 +358 +321 +384 +366 +342 +270 +287 +308 +393 +283 +266 +264 +325 +401 +276 +304 +378 +314 +278 +337 +201 +349 +247 +334 +370 +296 +375 +359 +242 +225 +391 +376 +387 +320 +309 +302 +205 +315 +215 +341 +379 +319 +204 +273 +243 +240 +216 +221 +368 +390 +239 +251 +402 +281 +277 +352 +213 +397 +374 +386 +372 +200 +291 +210 +335 +367 +371 +255 +389 +279 +250 +246 +364 +313 +226 +220 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/solutions/41.sol b/src/githubtests/medium_test_set/solutions/41.sol new file mode 100644 index 0000000..c24d9dd --- /dev/null +++ b/src/githubtests/medium_test_set/solutions/41.sol @@ -0,0 +1,24 @@ +195 +197 +199 +193 +198 +196 +202 +212 +209 +201 +207 +208 +213 +206 +204 +200 +203 +210 +205 +194 +191 +192 +190 +211 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/solutions/42.sol b/src/githubtests/medium_test_set/solutions/42.sol new file mode 100644 index 0000000..17838e4 --- /dev/null +++ b/src/githubtests/medium_test_set/solutions/42.sol @@ -0,0 +1,42 @@ +209 +234 +227 +203 +232 +206 +222 +217 +214 +236 +211 +223 +200 +202 +208 +197 +225 +231 +199 +233 +205 +238 +235 +224 +204 +229 +213 +226 +198 +218 +220 +221 +216 +230 +215 +237 +212 +207 +219 +210 +201 +228 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/solutions/43.sol b/src/githubtests/medium_test_set/solutions/43.sol new file mode 100644 index 0000000..da492f9 --- /dev/null +++ b/src/githubtests/medium_test_set/solutions/43.sol @@ -0,0 +1,48 @@ +290 +322 +319 +297 +323 +312 +306 +295 +303 +296 +318 +287 +328 +326 +294 +286 +293 +288 +292 +285 +300 +332 +302 +329 +309 +316 +310 +308 +305 +324 +320 +298 +301 +331 +311 +289 +315 +307 +313 +321 +325 +291 +314 +317 +330 +299 +304 +327 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/solutions/44.sol b/src/githubtests/medium_test_set/solutions/44.sol new file mode 100644 index 0000000..ace6b26 --- /dev/null +++ b/src/githubtests/medium_test_set/solutions/44.sol @@ -0,0 +1,221 @@ +981 +884 +868 +926 +1031 +1063 +911 +1020 +891 +1052 +998 +1045 +880 +940 +948 +890 +1047 +950 +1008 +1055 +1048 +906 +1034 +1059 +915 +959 +987 +983 +946 +898 +961 +1002 +977 +1073 +1026 +945 +937 +1066 +956 +949 +958 +876 +953 +857 +1033 +1053 +1018 +992 +954 +1036 +883 +925 +960 +923 +1013 +1049 +938 +905 +980 +932 +929 +975 +877 +1010 +1037 +887 +1025 +909 +1004 +1035 +1058 +1021 +994 +1069 +1051 +1029 +1040 +901 +910 +902 +894 +971 +1016 +1075 +989 +862 +943 +933 +869 +966 +899 +1038 +1067 +1012 +864 +859 +963 +892 +1028 +863 +951 +1039 +888 +1046 +1044 +969 +900 +1009 +957 +903 +1065 +935 +917 +1005 +973 +1014 +999 +955 +1030 +939 +1050 +871 +1041 +1007 +978 +997 +1042 +1001 +952 +913 +1076 +922 +858 +866 +990 +879 +893 +1022 +991 +927 +1070 +1032 +993 +970 +924 +872 +1043 +1068 +984 +1019 +996 +897 +979 +878 +1057 +1003 +1023 +1056 +919 +941 +865 +856 +1017 +1054 +912 +1000 +947 +918 +882 +1024 +962 +1015 +974 +889 +886 +1006 +870 +1027 +930 +908 +1071 +967 +976 +875 +861 +1062 +920 +934 +986 +914 +867 +885 +965 +942 +860 +985 +968 +895 +936 +896 +944 +1060 +931 +964 +881 +928 +907 +988 +874 +921 +1072 +1061 +972 +904 +982 +1064 +873 +916 +995 +1011 +1074 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/solutions/45.sol b/src/githubtests/medium_test_set/solutions/45.sol new file mode 100644 index 0000000..8fa180b --- /dev/null +++ b/src/githubtests/medium_test_set/solutions/45.sol @@ -0,0 +1,241 @@ +635 +590 +474 +487 +506 +595 +472 +482 +638 +538 +597 +495 +648 +630 +576 +569 +555 +616 +703 +702 +560 +655 +511 +594 +699 +641 +567 +565 +604 +591 +571 +642 +608 +697 +463 +561 +578 +500 +566 +690 +684 +600 +529 +549 +628 +515 +540 +552 +601 +548 +517 +629 +574 +656 +516 +596 +577 +553 +661 +584 +501 +643 +640 +479 +524 +464 +564 +653 +547 +598 +499 +527 +695 +693 +663 +531 +513 +468 +658 +484 +554 +652 +602 +632 +624 +672 +618 +633 +634 +480 +568 +639 +674 +498 +610 +603 +631 +575 +689 +505 +558 +657 +613 +609 +650 +615 +670 +507 +475 +533 +605 +614 +542 +700 +504 +620 +491 +636 +523 +520 +659 +508 +485 +467 +593 +611 +626 +606 +556 +489 +583 +483 +687 +496 +679 +570 +582 +622 +539 +651 +644 +692 +623 +683 +586 +471 +649 +617 +625 +537 +678 +532 +545 +535 +589 +473 +536 +677 +588 +544 +470 +681 +518 +669 +691 +502 +607 +662 +671 +637 +514 +619 +526 +530 +469 +528 +486 +492 +580 +562 +666 +581 +579 +525 +612 +572 +503 +668 +541 +551 +701 +476 +563 +466 +587 +494 +665 +510 +592 +521 +481 +465 +490 +546 +673 +685 +682 +627 +477 +698 +688 +550 +512 +694 +488 +675 +543 +664 +522 +667 +647 +599 +559 +478 +676 +696 +686 +557 +497 +645 +534 +519 +654 +573 +493 +680 +621 +585 +509 +646 +660 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/solutions/46.sol b/src/githubtests/medium_test_set/solutions/46.sol new file mode 100644 index 0000000..25d8a29 --- /dev/null +++ b/src/githubtests/medium_test_set/solutions/46.sol @@ -0,0 +1,238 @@ +952 +883 +902 +941 +884 +823 +811 +894 +803 +781 +908 +778 +891 +847 +991 +926 +806 +900 +819 +852 +775 +984 +774 +978 +938 +837 +866 +939 +901 +871 +934 +942 +844 +881 +814 +940 +873 +843 +796 +812 +809 +1008 +946 +893 +1005 +836 +771 +798 +791 +840 +953 +810 +961 +979 +918 +813 +980 +898 +841 +779 +777 +995 +818 +1001 +794 +988 +855 +911 +869 +804 +825 +861 +973 +799 +943 +886 +904 +790 +875 +865 +783 +912 +921 +780 +829 +1004 +972 +838 +927 +868 +822 +784 +956 +816 +867 +917 +801 +1002 +773 +966 +863 +786 +895 +831 +1007 +987 +947 +821 +963 +876 +997 +885 +776 +981 +879 +862 +951 +974 +969 +826 +850 +860 +808 +899 +878 +851 +835 +958 +839 +888 +788 +977 +880 +853 +933 +919 +916 +833 +986 +960 +915 +842 +824 +996 +857 +989 +945 +870 +834 +998 +792 +896 +903 +992 +924 +859 +846 +872 +983 +802 +793 +910 +930 +932 +905 +820 +1003 +787 +994 +975 +882 +817 +856 +928 +807 +874 +795 +897 +925 +922 +971 +848 +948 +913 +887 +815 +828 +797 +959 +782 +854 +864 +935 +923 +937 +800 +889 +1006 +929 +849 +999 +962 +949 +892 +1000 +909 +957 +955 +970 +964 +993 +832 +985 +982 +858 +785 +805 +845 +827 +931 +906 +936 +950 +789 +976 +968 +944 +965 +772 +914 +830 +877 +990 +967 +954 +907 +890 +920 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/solutions/47.sol b/src/githubtests/medium_test_set/solutions/47.sol new file mode 100644 index 0000000..f706889 --- /dev/null +++ b/src/githubtests/medium_test_set/solutions/47.sol @@ -0,0 +1,128 @@ +159 +259 +252 +230 +245 +145 +235 +222 +170 +195 +248 +190 +260 +182 +150 +152 +187 +217 +166 +157 +149 +204 +141 +189 +155 +147 +215 +207 +171 +179 +253 +183 +146 +137 +249 +142 +220 +233 +196 +213 +165 +163 +188 +134 +185 +228 +203 +258 +198 +257 +135 +232 +197 +192 +133 +180 +237 +244 +240 +227 +224 +154 +219 +218 +177 +200 +201 +241 +199 +181 +174 +138 +176 +168 +153 +243 +251 +254 +194 +156 +250 +209 +148 +225 +202 +160 +210 +191 +169 +162 +208 +158 +255 +186 +193 +256 +239 +173 +164 +223 +212 +242 +247 +236 +231 +175 +234 +226 +172 +246 +144 +143 +139 +229 +238 +221 +214 +151 +136 +205 +206 +167 +161 +211 +184 +140 +178 +216 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/solutions/48.sol b/src/githubtests/medium_test_set/solutions/48.sol new file mode 100644 index 0000000..7683e53 --- /dev/null +++ b/src/githubtests/medium_test_set/solutions/48.sol @@ -0,0 +1,194 @@ +233 +372 +222 +189 +339 +322 +238 +188 +335 +283 +267 +183 +284 +257 +333 +205 +332 +323 +239 +266 +371 +185 +359 +315 +296 +278 +275 +256 +214 +370 +255 +212 +195 +313 +210 +203 +288 +310 +281 +250 +245 +285 +270 +229 +352 +293 +280 +207 +227 +306 +211 +263 +186 +180 +237 +348 +366 +276 +350 +254 +303 +265 +243 +242 +202 +194 +231 +343 +298 +224 +219 +215 +302 +213 +198 +184 +191 +338 +325 +292 +309 +358 +244 +234 +317 +226 +365 +336 +249 +220 +217 +201 +269 +373 +354 +197 +364 +273 +218 +360 +319 +351 +324 +274 +327 +260 +253 +209 +181 +208 +357 +349 +320 +232 +230 +342 +301 +290 +196 +331 +345 +297 +334 +235 +316 +286 +259 +252 +204 +369 +340 +328 +318 +246 +182 +321 +326 +187 +355 +312 +341 +353 +308 +307 +294 +192 +367 +291 +272 +264 +337 +304 +258 +330 +279 +200 +363 +248 +251 +361 +368 +225 +295 +271 +268 +261 +262 +282 +241 +206 +329 +344 +199 +356 +346 +314 +305 +300 +240 +228 +311 +223 +299 +287 +347 +236 +193 +190 +277 +289 +221 +247 +216 +362 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/solutions/49.sol b/src/githubtests/medium_test_set/solutions/49.sol new file mode 100644 index 0000000..31102d1 --- /dev/null +++ b/src/githubtests/medium_test_set/solutions/49.sol @@ -0,0 +1,217 @@ +335 +333 +360 +406 +391 +253 +409 +405 +237 +260 +219 +358 +310 +246 +412 +239 +304 +361 +300 +385 +270 +402 +284 +249 +328 +318 +314 +290 +232 +214 +323 +287 +414 +282 +271 +380 +325 +241 +354 +217 +213 +311 +294 +408 +400 +319 +234 +293 +262 +415 +212 +263 +418 +373 +367 +313 +298 +286 +407 +230 +370 +332 +331 +259 +236 +357 +423 +353 +258 +399 +384 +264 +337 +296 +280 +231 +288 +395 +420 +346 +397 +292 +235 +382 +336 +305 +277 +272 +375 +309 +227 +393 +251 +229 +411 +338 +345 +207 +352 +312 +422 +247 +266 +356 +421 +401 +285 +410 +244 +268 +242 +252 +371 +369 +339 +386 +320 +297 +419 +326 +378 +390 +383 +307 +329 +368 +279 +350 +302 +349 +245 +417 +396 +413 +324 +226 +223 +225 +273 +381 +211 +210 +283 +275 +363 +365 +254 +315 +372 +348 +265 +404 +322 +269 +327 +379 +376 +224 +341 +228 +215 +250 +416 +392 +347 +344 +220 +398 +387 +295 +351 +342 +208 +343 +366 +240 +355 +340 +403 +359 +362 +321 +276 +364 +301 +334 +316 +299 +289 +216 +274 +317 +306 +291 +267 +257 +389 +281 +238 +261 +256 +377 +248 +222 +233 +221 +308 +209 +278 +388 +394 +330 +303 +255 +243 +218 +374 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/solutions/5.sol b/src/githubtests/medium_test_set/solutions/5.sol new file mode 100644 index 0000000..5188d5c --- /dev/null +++ b/src/githubtests/medium_test_set/solutions/5.sol @@ -0,0 +1,37 @@ +32 +48 +44 +58 +52 +42 +63 +62 +40 +43 +56 +65 +53 +55 +51 +35 +34 +68 +54 +36 +49 +59 +33 +57 +50 +39 +38 +60 +67 +41 +37 +66 +61 +47 +45 +64 +46 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/solutions/50.sol b/src/githubtests/medium_test_set/solutions/50.sol new file mode 100644 index 0000000..92d94bf --- /dev/null +++ b/src/githubtests/medium_test_set/solutions/50.sol @@ -0,0 +1,125 @@ +170 +130 +178 +149 +229 +231 +181 +166 +127 +245 +136 +247 +129 +124 +198 +134 +146 +141 +192 +220 +128 +212 +196 +226 +160 +225 +154 +185 +126 +243 +216 +233 +211 +208 +201 +189 +147 +209 +186 +144 +180 +176 +139 +190 +153 +159 +148 +168 +167 +217 +199 +248 +210 +204 +188 +194 +236 +223 +135 +221 +202 +235 +222 +165 +232 +133 +215 +193 +150 +158 +237 +224 +218 +183 +241 +156 +239 +219 +227 +169 +230 +203 +207 +200 +214 +242 +179 +175 +131 +143 +157 +234 +138 +177 +197 +140 +155 +184 +174 +244 +172 +164 +142 +162 +213 +163 +137 +205 +187 +228 +246 +195 +151 +206 +191 +145 +173 +152 +182 +132 +161 +240 +238 +125 +171 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/solutions/51.sol b/src/githubtests/medium_test_set/solutions/51.sol new file mode 100644 index 0000000..886ff38 --- /dev/null +++ b/src/githubtests/medium_test_set/solutions/51.sol @@ -0,0 +1,154 @@ +293 +273 +286 +212 +194 +198 +303 +228 +274 +271 +248 +219 +241 +196 +199 +272 +234 +193 +191 +250 +301 +223 +180 +178 +298 +204 +160 +182 +297 +156 +300 +264 +159 +283 +157 +257 +172 +209 +207 +185 +263 +252 +237 +226 +190 +247 +192 +151 +152 +214 +155 +229 +195 +188 +168 +163 +242 +277 +162 +253 +270 +203 +167 +261 +249 +292 +285 +265 +245 +294 +289 +189 +262 +169 +282 +233 +278 +154 +239 +236 +213 +158 +280 +217 +202 +211 +181 +244 +296 +269 +246 +222 +216 +177 +174 +179 +281 +224 +201 +290 +227 +184 +243 +231 +232 +165 +161 +221 +218 +173 +275 +210 +235 +304 +258 +166 +284 +251 +240 +279 +299 +183 +225 +254 +206 +287 +230 +302 +186 +171 +255 +197 +238 +176 +288 +200 +187 +266 +175 +259 +276 +260 +268 +295 +220 +170 +256 +267 +208 +205 +215 +291 +153 +164 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/solutions/52.sol b/src/githubtests/medium_test_set/solutions/52.sol new file mode 100644 index 0000000..5251821 --- /dev/null +++ b/src/githubtests/medium_test_set/solutions/52.sol @@ -0,0 +1,220 @@ +448 +413 +404 +343 +441 +324 +293 +468 +313 +298 +406 +368 +429 +312 +344 +438 +346 +381 +453 +323 +274 +461 +297 +363 +260 +351 +304 +380 +389 +352 +456 +452 +411 +262 +375 +382 +409 +365 +361 +396 +282 +305 +359 +318 +265 +407 +345 +455 +384 +434 +261 +437 +310 +431 +398 +388 +392 +395 +329 +399 +426 +317 +405 +469 +339 +394 +467 +454 +256 +281 +466 +373 +325 +417 +414 +334 +357 +383 +432 +440 +353 +303 +307 +439 +356 +402 +447 +393 +366 +428 +291 +367 +280 +342 +349 +457 +327 +451 +270 +328 +358 +460 +295 +275 +347 +470 +378 +442 +385 +326 +259 +255 +430 +369 +287 +330 +374 +419 +443 +267 +277 +379 +294 +424 +376 +371 +377 +283 +254 +284 +436 +299 +300 +271 +410 +257 +341 +258 +320 +289 +337 +421 +420 +360 +266 +445 +354 +263 +253 +286 +423 +273 +322 +333 +350 +446 +462 +278 +449 +335 +332 +252 +340 +418 +397 +401 +302 +403 +314 +251 +264 +433 +269 +279 +415 +390 +336 +459 +355 +412 +416 +400 +331 +450 +387 +290 +422 +364 +372 +362 +272 +315 +391 +296 +309 +306 +386 +425 +435 +319 +316 +338 +444 +301 +276 +285 +427 +292 +408 +464 +268 +465 +463 +458 +348 +370 +311 +288 +308 +321 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/solutions/53.sol b/src/githubtests/medium_test_set/solutions/53.sol new file mode 100644 index 0000000..4d56b97 --- /dev/null +++ b/src/githubtests/medium_test_set/solutions/53.sol @@ -0,0 +1,111 @@ +209 +208 +207 +206 +204 +202 +201 +200 +164 +212 +211 +210 +205 +203 +199 +198 +197 +196 +195 +194 +193 +192 +191 +190 +189 +188 +187 +186 +185 +184 +183 +182 +181 +180 +179 +177 +176 +175 +174 +173 +172 +170 +169 +168 +167 +166 +165 +163 +162 +161 +160 +159 +158 +157 +156 +155 +154 +153 +152 +151 +150 +149 +148 +147 +146 +145 +144 +143 +142 +141 +140 +139 +138 +137 +136 +135 +134 +133 +132 +131 +130 +129 +128 +126 +125 +123 +117 +116 +115 +114 +113 +112 +111 +110 +109 +108 +107 +106 +105 +171 +178 +127 +124 +122 +121 +120 +119 +118 +104 +103 +102 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/solutions/54.sol b/src/githubtests/medium_test_set/solutions/54.sol new file mode 100644 index 0000000..9da3cbd --- /dev/null +++ b/src/githubtests/medium_test_set/solutions/54.sol @@ -0,0 +1,125 @@ +253 +250 +246 +231 +214 +212 +203 +186 +181 +141 +207 +163 +255 +254 +248 +235 +234 +232 +230 +226 +205 +201 +188 +184 +165 +225 +216 +191 +171 +154 +150 +144 +140 +187 +209 +256 +224 +223 +175 +167 +164 +142 +139 +257 +243 +239 +237 +182 +252 +244 +242 +236 +227 +222 +220 +219 +217 +215 +213 +211 +208 +206 +204 +200 +198 +194 +183 +178 +177 +172 +170 +168 +162 +161 +158 +152 +149 +148 +147 +146 +145 +134 +151 +136 +247 +245 +218 +138 +199 +190 +251 +176 +228 +210 +192 +189 +185 +180 +174 +166 +160 +156 +153 +135 +258 +249 +240 +238 +233 +221 +202 +196 +193 +179 +173 +169 +157 +137 +241 +195 +155 +229 +197 +159 +143 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/solutions/55.sol b/src/githubtests/medium_test_set/solutions/55.sol new file mode 100644 index 0000000..ad6b651 --- /dev/null +++ b/src/githubtests/medium_test_set/solutions/55.sol @@ -0,0 +1,172 @@ +328 +324 +320 +315 +308 +302 +271 +264 +252 +247 +238 +231 +223 +214 +292 +221 +304 +267 +213 +203 +344 +301 +289 +277 +265 +253 +220 +209 +205 +202 +196 +184 +197 +186 +228 +321 +310 +259 +188 +274 +189 +182 +181 +178 +346 +326 +300 +255 +210 +191 +176 +336 +299 +296 +257 +227 +192 +303 +187 +280 +345 +334 +333 +322 +313 +312 +307 +285 +275 +270 +258 +217 +319 +260 +249 +242 +218 +281 +295 +290 +286 +273 +215 +266 +241 +340 +329 +272 +216 +341 +325 +309 +305 +297 +291 +288 +282 +276 +193 +177 +175 +284 +283 +269 +262 +254 +248 +243 +239 +237 +219 +204 +183 +263 +225 +323 +311 +211 +343 +250 +194 +179 +314 +190 +338 +337 +327 +180 +317 +268 +244 +235 +233 +230 +208 +206 +201 +199 +195 +229 +226 +332 +240 +330 +224 +316 +294 +222 +279 +331 +232 +318 +293 +198 +339 +306 +298 +245 +234 +207 +200 +185 +342 +335 +287 +278 +261 +256 +251 +246 +236 +212 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/solutions/56.sol b/src/githubtests/medium_test_set/solutions/56.sol new file mode 100644 index 0000000..478f152 --- /dev/null +++ b/src/githubtests/medium_test_set/solutions/56.sol @@ -0,0 +1,224 @@ +455 +443 +436 +435 +433 +429 +425 +422 +415 +413 +408 +402 +398 +394 +393 +390 +388 +386 +379 +377 +376 +375 +374 +368 +362 +360 +344 +342 +341 +339 +332 +331 +330 +329 +327 +326 +321 +317 +303 +302 +301 +297 +293 +288 +286 +284 +283 +278 +277 +275 +274 +272 +268 +267 +266 +262 +261 +260 +259 +257 +255 +253 +250 +249 +246 +242 +241 +238 +237 +236 +457 +445 +416 +399 +441 +420 +391 +378 +354 +353 +350 +346 +345 +338 +323 +322 +313 +312 +300 +291 +290 +289 +287 +279 +256 +252 +244 +298 +243 +239 +459 +454 +421 +400 +343 +271 +264 +451 +444 +372 +370 +366 +364 +348 +334 +316 +315 +304 +265 +356 +311 +427 +407 +404 +401 +381 +337 +310 +247 +299 +314 +446 +424 +396 +306 +269 +263 +254 +431 +382 +447 +369 +347 +409 +355 +296 +292 +273 +392 +439 +419 +320 +456 +442 +440 +438 +426 +417 +319 +406 +387 +385 +383 +367 +363 +359 +333 +325 +245 +240 +449 +358 +450 +389 +309 +258 +432 +352 +307 +458 +430 +437 +428 +423 +414 +412 +411 +410 +403 +397 +380 +371 +365 +357 +351 +335 +328 +324 +305 +295 +281 +276 +251 +248 +434 +405 +395 +373 +340 +318 +282 +453 +452 +448 +418 +384 +361 +349 +336 +308 +294 +285 +280 +270 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/solutions/57.sol b/src/githubtests/medium_test_set/solutions/57.sol new file mode 100644 index 0000000..f3d281a --- /dev/null +++ b/src/githubtests/medium_test_set/solutions/57.sol @@ -0,0 +1,279 @@ +539 +538 +534 +533 +532 +531 +528 +527 +526 +524 +521 +519 +510 +499 +495 +484 +480 +476 +457 +455 +425 +420 +411 +402 +392 +390 +365 +352 +344 +331 +329 +300 +299 +293 +286 +271 +269 +263 +485 +473 +464 +453 +449 +288 +536 +530 +529 +518 +507 +505 +504 +488 +475 +460 +452 +443 +436 +426 +423 +405 +404 +401 +400 +399 +398 +396 +395 +393 +377 +371 +370 +363 +359 +357 +356 +355 +353 +348 +333 +305 +301 +296 +287 +285 +283 +281 +278 +276 +275 +274 +266 +442 +368 +342 +332 +312 +537 +525 +523 +520 +517 +513 +512 +509 +483 +482 +479 +478 +474 +472 +471 +470 +469 +468 +467 +466 +465 +463 +462 +461 +459 +458 +456 +454 +451 +450 +448 +447 +439 +438 +435 +428 +422 +419 +416 +414 +410 +408 +406 +397 +383 +381 +366 +341 +339 +336 +321 +315 +308 +277 +403 +446 +265 +491 +535 +394 +522 +516 +515 +514 +511 +508 +506 +503 +502 +501 +500 +498 +497 +496 +494 +493 +492 +490 +489 +487 +486 +477 +481 +445 +444 +441 +440 +437 +434 +433 +432 +431 +430 +429 +427 +424 +421 +418 +417 +415 +413 +412 +409 +407 +391 +389 +388 +387 +386 +385 +384 +382 +380 +379 +378 +376 +375 +374 +373 +372 +369 +367 +364 +362 +361 +360 +358 +354 +351 +350 +349 +347 +346 +345 +343 +340 +338 +337 +335 +334 +330 +328 +327 +326 +325 +324 +323 +322 +320 +319 +318 +317 +316 +314 +313 +311 +310 +309 +307 +306 +304 +303 +302 +298 +297 +295 +294 +292 +291 +290 +289 +284 +282 +280 +279 +273 +272 +270 +268 +267 +264 +262 +261 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/solutions/58.sol b/src/githubtests/medium_test_set/solutions/58.sol new file mode 100644 index 0000000..6e4e7cb --- /dev/null +++ b/src/githubtests/medium_test_set/solutions/58.sol @@ -0,0 +1,24 @@ +32 +34 +30 +19 +21 +26 +16 +22 +31 +37 +36 +35 +28 +23 +24 +29 +17 +15 +27 +25 +18 +14 +20 +33 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/solutions/59.sol b/src/githubtests/medium_test_set/solutions/59.sol new file mode 100644 index 0000000..1b47483 --- /dev/null +++ b/src/githubtests/medium_test_set/solutions/59.sol @@ -0,0 +1,32 @@ +23 +44 +37 +43 +49 +35 +45 +38 +46 +36 +25 +34 +39 +48 +47 +21 +28 +40 +33 +27 +24 +31 +20 +19 +26 +22 +32 +29 +42 +41 +30 +18 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/solutions/6.sol b/src/githubtests/medium_test_set/solutions/6.sol new file mode 100644 index 0000000..90345c6 --- /dev/null +++ b/src/githubtests/medium_test_set/solutions/6.sol @@ -0,0 +1,152 @@ +271 +250 +156 +278 +263 +259 +232 +222 +237 +285 +265 +255 +188 +261 +287 +236 +187 +162 +157 +294 +172 +170 +288 +223 +211 +161 +220 +242 +254 +192 +176 +173 +252 +205 +203 +175 +227 +262 +284 +275 +274 +238 +218 +177 +286 +282 +149 +253 +184 +179 +169 +158 +246 +292 +151 +281 +216 +215 +279 +269 +264 +258 +193 +183 +180 +167 +144 +293 +208 +174 +249 +159 +276 +248 +168 +241 +272 +201 +207 +160 +181 +235 +244 +225 +224 +240 +280 +233 +182 +146 +239 +231 +260 +295 +257 +226 +209 +251 +230 +221 +199 +202 +150 +206 +153 +194 +148 +217 +189 +186 +195 +212 +289 +229 +163 +152 +178 +185 +165 +243 +256 +191 +273 +266 +267 +228 +198 +283 +219 +204 +214 +210 +147 +196 +200 +166 +190 +171 +213 +245 +277 +247 +197 +145 +290 +291 +270 +155 +234 +154 +268 +164 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/solutions/60.sol b/src/githubtests/medium_test_set/solutions/60.sol new file mode 100644 index 0000000..1e35ef2 --- /dev/null +++ b/src/githubtests/medium_test_set/solutions/60.sol @@ -0,0 +1,144 @@ +205 +197 +220 +228 +177 +132 +233 +173 +135 +133 +126 +124 +262 +185 +175 +250 +165 +180 +143 +257 +123 +252 +245 +187 +241 +137 +141 +129 +182 +259 +254 +218 +203 +255 +235 +223 +265 +230 +264 +162 +248 +196 +159 +237 +154 +151 +242 +136 +208 +201 +195 +192 +183 +152 +125 +234 +251 +232 +194 +261 +238 +212 +191 +156 +213 +140 +142 +134 +122 +224 +258 +214 +247 +181 +198 +147 +178 +236 +179 +188 +193 +210 +209 +158 +186 +215 +189 +174 +163 +239 +170 +167 +153 +263 +148 +256 +249 +225 +128 +226 +222 +217 +260 +207 +204 +231 +176 +155 +253 +202 +211 +127 +219 +246 +168 +243 +199 +244 +145 +240 +190 +216 +171 +169 +150 +146 +227 +206 +161 +130 +221 +172 +160 +139 +149 +184 +166 +164 +157 +138 +200 +144 +131 +229 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/solutions/7.sol b/src/githubtests/medium_test_set/solutions/7.sol new file mode 100644 index 0000000..494526e --- /dev/null +++ b/src/githubtests/medium_test_set/solutions/7.sol @@ -0,0 +1,215 @@ +457 +439 +297 +346 +298 +426 +262 +397 +334 +326 +289 +270 +459 +449 +412 +349 +348 +375 +437 +357 +343 +274 +269 +288 +312 +263 +399 +398 +423 +360 +382 +458 +296 +434 +286 +354 +273 +453 +311 +401 +446 +451 +323 +385 +359 +392 +301 +280 +250 +366 +335 +300 +410 +290 +406 +352 +427 +266 +322 +417 +442 +387 +327 +305 +285 +246 +245 +364 +279 +413 +333 +419 +255 +309 +415 +431 +414 +291 +317 +336 +321 +316 +275 +378 +436 +391 +302 +377 +350 +268 +315 +331 +276 +418 +281 +454 +379 +308 +363 +284 +248 +345 +304 +247 +355 +351 +260 +254 +330 +400 +369 +253 +372 +339 +272 +287 +264 +443 +421 +381 +337 +448 +424 +338 +313 +361 +383 +303 +373 +411 +306 +282 +433 +394 +365 +319 +403 +283 +380 +277 +404 +425 +341 +261 +429 +432 +258 +328 +249 +440 +367 +438 +435 +409 +389 +384 +271 +252 +422 +314 +430 +386 +318 +428 +256 +407 +332 +402 +257 +293 +251 +390 +294 +376 +393 +265 +455 +320 +259 +267 +325 +353 +278 +344 +444 +299 +356 +358 +456 +416 +408 +329 +324 +292 +340 +447 +368 +362 +450 +388 +347 +295 +452 +307 +405 +374 +342 +310 +445 +441 +396 +420 +370 +371 +395 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/solutions/8.sol b/src/githubtests/medium_test_set/solutions/8.sol new file mode 100644 index 0000000..d7d3e31 --- /dev/null +++ b/src/githubtests/medium_test_set/solutions/8.sol @@ -0,0 +1,308 @@ +630 +401 +633 +632 +608 +577 +356 +391 +366 +532 +527 +620 +599 +563 +547 +442 +647 +541 +454 +379 +489 +643 +636 +635 +462 +479 +409 +480 +436 +441 +560 +618 +511 +460 +365 +623 +567 +496 +485 +472 +402 +594 +405 +476 +597 +424 +555 +512 +411 +364 +604 +562 +576 +538 +550 +650 +361 +570 +501 +559 +407 +478 +528 +586 +368 +375 +610 +473 +471 +351 +494 +397 +497 +509 +452 +450 +517 +614 +619 +569 +596 +584 +505 +390 +430 +626 +548 +642 +631 +492 +385 +369 +537 +490 +355 +551 +645 +438 +421 +349 +398 +382 +431 +448 +475 +585 +423 +554 +459 +523 +581 +469 +504 +574 +400 +481 +617 +457 +363 +446 +373 +392 +470 +399 +482 +483 +568 +362 +627 +354 +525 +393 +412 +414 +601 +557 +370 +583 +377 +616 +488 +415 +445 +595 +549 +410 +518 +628 +593 +380 +641 +640 +499 +542 +434 +520 +612 +444 +404 +654 +495 +603 +484 +378 +652 +598 +539 +403 +374 +526 +644 +639 +600 +429 +418 +381 +535 +522 +359 +613 +455 +439 +638 +624 +575 +609 +556 +433 +422 +521 +605 +352 +416 +524 +651 +566 +533 +513 +413 +531 +506 +486 +432 +514 +653 +465 +388 +637 +376 +384 +564 +571 +357 +387 +447 +396 +552 +367 +606 +458 +579 +493 +464 +408 +467 +453 +634 +621 +543 +503 +428 +591 +546 +395 +510 +590 +646 +648 +625 +360 +426 +456 +350 +437 +451 +386 +425 +443 +553 +622 +498 +427 +474 +420 +353 +572 +502 +587 +383 +491 +545 +371 +649 +544 +466 +468 +589 +449 +578 +588 +487 +602 +558 +372 +389 +629 +540 +515 +419 +530 +519 +440 +406 +435 +536 +417 +500 +582 +477 +561 +611 +573 +358 +565 +534 +516 +508 +615 +463 +507 +461 +347 +348 +607 +592 +580 +529 +394 \ No newline at end of file diff --git a/src/githubtests/medium_test_set/solutions/9.sol b/src/githubtests/medium_test_set/solutions/9.sol new file mode 100644 index 0000000..ba53eda --- /dev/null +++ b/src/githubtests/medium_test_set/solutions/9.sol @@ -0,0 +1,344 @@ +617 +616 +628 +701 +642 +639 +601 +483 +419 +592 +432 +590 +711 +682 +641 +713 +640 +623 +547 +587 +509 +409 +598 +445 +581 +619 +418 +528 +505 +550 +588 +507 +404 +646 +629 +401 +665 +457 +545 +490 +476 +533 +695 +570 +571 +595 +562 +534 +452 +569 +426 +400 +709 +532 +379 +677 +451 +411 +657 +446 +491 +423 +448 +412 +512 +500 +609 +690 +599 +416 +706 +475 +714 +503 +499 +719 +606 +430 +627 +480 +471 +468 +406 +523 +710 +397 +548 +607 +382 +605 +383 +398 +541 +539 +444 +496 +679 +529 +377 +546 +493 +453 +425 +652 +594 +506 +649 +513 +645 +643 +567 +462 +484 +585 +696 +579 +559 +399 +542 +394 +591 +667 +537 +488 +664 +638 +392 +387 +518 +654 +586 +536 +577 +552 +670 +631 +600 +573 +456 +565 +674 +688 +589 +436 +485 +521 +386 +698 +459 +597 +408 +486 +692 +473 +495 +424 +699 +413 +524 +614 +596 +604 +447 +703 +410 +661 +522 +694 +715 +712 +687 +675 +625 +482 +553 +504 +443 +666 +582 +390 +515 +555 +464 +497 +697 +558 +543 +433 +442 +650 +385 +564 +466 +435 +527 +498 +441 +624 +531 +501 +470 +681 +560 +689 +612 +428 +479 +574 +472 +540 +618 +656 +672 +653 +644 +633 +508 +626 +610 +407 +396 +389 +439 +651 +671 +683 +630 +381 +716 +458 +693 +544 +663 +538 +647 +561 +391 +440 +519 +622 +376 +634 +502 +613 +575 +568 +636 +465 +384 +659 +676 +705 +388 +525 +554 +549 +584 +535 +658 +668 +718 +478 +463 +437 +576 +678 +680 +477 +378 +632 +380 +608 +635 +702 +691 +421 +530 +708 +669 +684 +685 +489 +393 +449 +686 +660 +487 +566 +580 +395 +429 +603 +655 +572 +520 +454 +417 +405 +717 +461 +438 +563 +516 +420 +602 +700 +673 +578 +556 +526 +414 +621 +615 +593 +481 +415 +450 +517 +402 +704 +583 +611 +494 +620 +510 +474 +492 +662 +637 +427 +707 +557 +514 +469 +467 +460 +403 +422 +648 +551 +455 +434 +431 +511 \ No newline at end of file diff --git a/src/githubtests/tiny_test_set/instances/complete_4_5.gr b/src/githubtests/tiny_test_set/instances/complete_4_5.gr new file mode 100644 index 0000000..5af21cc --- /dev/null +++ b/src/githubtests/tiny_test_set/instances/complete_4_5.gr @@ -0,0 +1,21 @@ +p ocr 4 5 20 +1 5 +1 6 +1 7 +1 8 +1 9 +2 5 +2 6 +2 7 +2 8 +2 9 +3 5 +3 6 +3 7 +3 8 +3 9 +4 5 +4 6 +4 7 +4 8 +4 9 diff --git a/src/githubtests/tiny_test_set/instances/cycle_8_shuffled.gr b/src/githubtests/tiny_test_set/instances/cycle_8_shuffled.gr new file mode 100644 index 0000000..e4ff7b7 --- /dev/null +++ b/src/githubtests/tiny_test_set/instances/cycle_8_shuffled.gr @@ -0,0 +1,9 @@ +p ocr 4 4 8 +1 6 +1 8 +2 6 +2 7 +3 5 +3 7 +4 5 +4 8 diff --git a/src/githubtests/tiny_test_set/instances/cycle_8_sorted.gr b/src/githubtests/tiny_test_set/instances/cycle_8_sorted.gr new file mode 100644 index 0000000..a75f47b --- /dev/null +++ b/src/githubtests/tiny_test_set/instances/cycle_8_sorted.gr @@ -0,0 +1,9 @@ +p ocr 4 4 8 +1 5 +1 7 +2 5 +2 6 +3 7 +3 8 +4 6 +4 8 diff --git a/src/githubtests/tiny_test_set/instances/grid_9_shuffled.gr b/src/githubtests/tiny_test_set/instances/grid_9_shuffled.gr new file mode 100644 index 0000000..fda6e4e --- /dev/null +++ b/src/githubtests/tiny_test_set/instances/grid_9_shuffled.gr @@ -0,0 +1,13 @@ +p ocr 4 5 12 +1 5 +1 7 +1 8 +2 6 +2 7 +2 9 +3 7 +3 8 +3 9 +4 5 +4 6 +4 7 diff --git a/src/githubtests/tiny_test_set/instances/ladder_4_4_shuffled.gr b/src/githubtests/tiny_test_set/instances/ladder_4_4_shuffled.gr new file mode 100644 index 0000000..0da3e8f --- /dev/null +++ b/src/githubtests/tiny_test_set/instances/ladder_4_4_shuffled.gr @@ -0,0 +1,11 @@ +p ocr 4 4 10 +1 5 +1 6 +2 6 +2 7 +2 8 +3 7 +3 8 +4 5 +4 6 +4 7 diff --git a/src/githubtests/tiny_test_set/instances/ladder_4_4_sorted.gr b/src/githubtests/tiny_test_set/instances/ladder_4_4_sorted.gr new file mode 100644 index 0000000..568a381 --- /dev/null +++ b/src/githubtests/tiny_test_set/instances/ladder_4_4_sorted.gr @@ -0,0 +1,11 @@ +p ocr 4 4 10 +1 5 +1 8 +2 5 +2 8 +2 7 +3 8 +3 7 +3 6 +4 7 +4 6 diff --git a/src/githubtests/tiny_test_set/instances/matching_4_4.gr b/src/githubtests/tiny_test_set/instances/matching_4_4.gr new file mode 100644 index 0000000..4e61bc1 --- /dev/null +++ b/src/githubtests/tiny_test_set/instances/matching_4_4.gr @@ -0,0 +1,5 @@ +p ocr 4 4 4 +1 7 +2 5 +3 6 +4 8 diff --git a/src/githubtests/tiny_test_set/instances/path_9_shuffled.gr b/src/githubtests/tiny_test_set/instances/path_9_shuffled.gr new file mode 100644 index 0000000..0f879fe --- /dev/null +++ b/src/githubtests/tiny_test_set/instances/path_9_shuffled.gr @@ -0,0 +1,9 @@ +p ocr 5 4 8 +1 8 +2 7 +2 6 +3 9 +4 6 +4 8 +5 7 +5 9 diff --git a/src/githubtests/tiny_test_set/instances/path_9_sorted.gr b/src/githubtests/tiny_test_set/instances/path_9_sorted.gr new file mode 100644 index 0000000..a2712c4 --- /dev/null +++ b/src/githubtests/tiny_test_set/instances/path_9_sorted.gr @@ -0,0 +1,9 @@ +p ocr 5 4 8 +1 7 +2 7 +2 9 +3 9 +3 6 +4 6 +4 8 +5 8 diff --git a/src/githubtests/tiny_test_set/instances/plane_5_6.gr b/src/githubtests/tiny_test_set/instances/plane_5_6.gr new file mode 100644 index 0000000..f28982e --- /dev/null +++ b/src/githubtests/tiny_test_set/instances/plane_5_6.gr @@ -0,0 +1,11 @@ +p ocr 5 6 10 +1 6 +1 9 +1 11 +2 6 +2 10 +3 10 +4 10 +4 7 +4 8 +5 8 diff --git a/src/githubtests/tiny_test_set/instances/star_6.gr b/src/githubtests/tiny_test_set/instances/star_6.gr new file mode 100644 index 0000000..8295a62 --- /dev/null +++ b/src/githubtests/tiny_test_set/instances/star_6.gr @@ -0,0 +1,7 @@ +p ocr 2 6 6 +1 3 +2 4 +1 5 +2 6 +1 7 +2 8 diff --git a/src/githubtests/tiny_test_set/instances/tree_6_10.gr b/src/githubtests/tiny_test_set/instances/tree_6_10.gr new file mode 100644 index 0000000..a1d9f17 --- /dev/null +++ b/src/githubtests/tiny_test_set/instances/tree_6_10.gr @@ -0,0 +1,16 @@ +p ocr 6 10 15 +1 7 +1 8 +2 7 +2 9 +2 10 +2 11 +3 7 +3 12 +3 13 +4 7 +5 8 +6 8 +6 14 +6 15 +6 16 diff --git a/src/githubtests/tiny_test_set/instances/website_20.gr b/src/githubtests/tiny_test_set/instances/website_20.gr new file mode 100644 index 0000000..2f8bea3 --- /dev/null +++ b/src/githubtests/tiny_test_set/instances/website_20.gr @@ -0,0 +1,13 @@ +p ocr 10 10 12 +1 15 +1 16 +2 17 +3 18 +4 19 +5 20 +6 11 +7 12 +8 13 +9 14 +10 15 +10 16 diff --git a/src/githubtests/tiny_test_set/solutions/complete_4_5.sol b/src/githubtests/tiny_test_set/solutions/complete_4_5.sol new file mode 100644 index 0000000..56593e1 --- /dev/null +++ b/src/githubtests/tiny_test_set/solutions/complete_4_5.sol @@ -0,0 +1,5 @@ +5 +6 +7 +8 +9 \ No newline at end of file diff --git a/src/githubtests/tiny_test_set/solutions/cycle_8_shuffled.sol b/src/githubtests/tiny_test_set/solutions/cycle_8_shuffled.sol new file mode 100644 index 0000000..aa299fc --- /dev/null +++ b/src/githubtests/tiny_test_set/solutions/cycle_8_shuffled.sol @@ -0,0 +1,4 @@ +6 +7 +8 +5 \ No newline at end of file diff --git a/src/githubtests/tiny_test_set/solutions/cycle_8_sorted.sol b/src/githubtests/tiny_test_set/solutions/cycle_8_sorted.sol new file mode 100644 index 0000000..4f6fd4b --- /dev/null +++ b/src/githubtests/tiny_test_set/solutions/cycle_8_sorted.sol @@ -0,0 +1,4 @@ +5 +7 +6 +8 \ No newline at end of file diff --git a/src/githubtests/tiny_test_set/solutions/grid_9_shuffled.sol b/src/githubtests/tiny_test_set/solutions/grid_9_shuffled.sol new file mode 100644 index 0000000..fff6370 --- /dev/null +++ b/src/githubtests/tiny_test_set/solutions/grid_9_shuffled.sol @@ -0,0 +1,5 @@ +8 +5 +7 +9 +6 \ No newline at end of file diff --git a/src/githubtests/tiny_test_set/solutions/ladder_4_4_shuffled.sol b/src/githubtests/tiny_test_set/solutions/ladder_4_4_shuffled.sol new file mode 100644 index 0000000..df838fa --- /dev/null +++ b/src/githubtests/tiny_test_set/solutions/ladder_4_4_shuffled.sol @@ -0,0 +1,4 @@ +5 +6 +8 +7 \ No newline at end of file diff --git a/src/githubtests/tiny_test_set/solutions/ladder_4_4_sorted.sol b/src/githubtests/tiny_test_set/solutions/ladder_4_4_sorted.sol new file mode 100644 index 0000000..18a024c --- /dev/null +++ b/src/githubtests/tiny_test_set/solutions/ladder_4_4_sorted.sol @@ -0,0 +1,4 @@ +5 +8 +7 +6 \ No newline at end of file diff --git a/src/githubtests/tiny_test_set/solutions/matching_4_4.sol b/src/githubtests/tiny_test_set/solutions/matching_4_4.sol new file mode 100644 index 0000000..b43887f --- /dev/null +++ b/src/githubtests/tiny_test_set/solutions/matching_4_4.sol @@ -0,0 +1,4 @@ +7 +5 +6 +8 \ No newline at end of file diff --git a/src/githubtests/tiny_test_set/solutions/path_9_shuffled.sol b/src/githubtests/tiny_test_set/solutions/path_9_shuffled.sol new file mode 100644 index 0000000..2f33c89 --- /dev/null +++ b/src/githubtests/tiny_test_set/solutions/path_9_shuffled.sol @@ -0,0 +1,4 @@ +8 +6 +7 +9 \ No newline at end of file diff --git a/src/githubtests/tiny_test_set/solutions/path_9_sorted.sol b/src/githubtests/tiny_test_set/solutions/path_9_sorted.sol new file mode 100644 index 0000000..5a549b9 --- /dev/null +++ b/src/githubtests/tiny_test_set/solutions/path_9_sorted.sol @@ -0,0 +1,4 @@ +7 +9 +6 +8 \ No newline at end of file diff --git a/src/githubtests/tiny_test_set/solutions/plane_5_6.sol b/src/githubtests/tiny_test_set/solutions/plane_5_6.sol new file mode 100644 index 0000000..5798bf3 --- /dev/null +++ b/src/githubtests/tiny_test_set/solutions/plane_5_6.sol @@ -0,0 +1,6 @@ +9 +11 +6 +10 +7 +8 \ No newline at end of file diff --git a/src/githubtests/tiny_test_set/solutions/star_6.sol b/src/githubtests/tiny_test_set/solutions/star_6.sol new file mode 100644 index 0000000..af17a06 --- /dev/null +++ b/src/githubtests/tiny_test_set/solutions/star_6.sol @@ -0,0 +1,6 @@ +3 +5 +7 +4 +6 +8 \ No newline at end of file diff --git a/src/githubtests/tiny_test_set/solutions/tree_6_10.sol b/src/githubtests/tiny_test_set/solutions/tree_6_10.sol new file mode 100644 index 0000000..8a8b6bf --- /dev/null +++ b/src/githubtests/tiny_test_set/solutions/tree_6_10.sol @@ -0,0 +1,10 @@ +9 +10 +11 +7 +12 +13 +8 +14 +15 +16 \ No newline at end of file diff --git a/src/githubtests/tiny_test_set/solutions/website_20.sol b/src/githubtests/tiny_test_set/solutions/website_20.sol new file mode 100644 index 0000000..a634044 --- /dev/null +++ b/src/githubtests/tiny_test_set/solutions/website_20.sol @@ -0,0 +1,10 @@ +15 +16 +17 +18 +19 +20 +11 +12 +13 +14 \ No newline at end of file diff --git a/src/main.py b/src/main.py index ecc563a..b28bc1a 100644 --- a/src/main.py +++ b/src/main.py @@ -9,8 +9,9 @@ def solve_bipartite_minimization(graph_file): # Extrahiere den Basisnamen der Eingabedatei base_name = os.path.basename(graph_file) + new_base_name = base_name.replace('.gr', '.sol') # Erstelle den Ausgabepfad - output_file = os.path.join('solution_instances', base_name) + output_file = os.path.join('solution_instances', new_base_name) logging.info(f"Die Ausgabedatei wird {output_file} sein") edges = [] @@ -95,5 +96,6 @@ def solve_bipartite_minimization(graph_file): logging.warning("Keine optimale Lösung gefunden.") -test_file = 'test_instances/0.gr' +test_file = 'githubtests/tiny_test_set/instances/cycle_8_sorted.gr' +#test_file = 'test_instances/0.gr' solve_bipartite_minimization(test_file) diff --git a/src/prob.lp b/src/prob.lp new file mode 100644 index 0000000..5933c9e --- /dev/null +++ b/src/prob.lp @@ -0,0 +1,29 @@ +\* Minimize_Crossings *\ +Minimize +OBJ: c_1_5_2_4 + c_1_5_3_6 + c_2_4_3_6 +Subject To +_C1: - c_1_5_3_6 - x_1_3 + y_5_6 <= 0 +_C10: y_5_6 + y_6_5 = 1 +_C11: y_4_6 + y_6_4 = 1 +_C12: y_5_6 + y_6_5 = 1 +_C2: - c_1_5_3_6 + x_1_3 + y_6_5 <= 1 +_C3: - c_2_4_3_6 - x_2_3 + y_4_6 <= 0 +_C4: - c_2_4_3_6 + x_2_3 + y_6_4 <= 1 +_C5: y_4_5 - y_4_6 + y_5_6 <= 1 +_C6: y_4_5 - y_4_6 + y_5_6 >= 0 +_C7: y_4_5 + y_5_4 = 1 +_C8: y_4_6 + y_6_4 = 1 +_C9: y_4_5 + y_5_4 = 1 +Binaries +c_1_5_2_4 +c_1_5_3_6 +c_2_4_3_6 +x_1_3 +x_2_3 +y_4_5 +y_4_6 +y_5_4 +y_5_6 +y_6_4 +y_6_5 +End diff --git a/src/solution_instances/0.sol b/src/solution_instances/0.sol new file mode 100644 index 0000000..292ff76 --- /dev/null +++ b/src/solution_instances/0.sol @@ -0,0 +1,3 @@ +5 +4 +6 diff --git a/src/solution_instances/1.gr b/src/solution_instances/1.gr new file mode 100644 index 0000000..6fd715b --- /dev/null +++ b/src/solution_instances/1.gr @@ -0,0 +1,122 @@ +193 +256 +255 +254 +253 +252 +251 +250 +249 +248 +247 +246 +245 +244 +243 +242 +241 +240 +239 +238 +237 +236 +235 +234 +233 +232 +231 +230 +229 +228 +227 +226 +225 +224 +223 +222 +221 +220 +219 +218 +217 +216 +215 +214 +213 +212 +211 +210 +209 +208 +207 +206 +205 +204 +203 +202 +201 +200 +199 +198 +197 +196 +195 +194 +192 +191 +190 +189 +188 +187 +186 +185 +184 +183 +182 +181 +180 +179 +178 +177 +176 +175 +174 +173 +172 +171 +170 +169 +168 +167 +166 +165 +164 +163 +162 +161 +160 +159 +158 +157 +156 +155 +154 +153 +152 +151 +150 +149 +148 +147 +146 +145 +144 +143 +142 +141 +140 +139 +138 +137 +257 +258 diff --git a/src/solution_instances/complete_4_5.gr b/src/solution_instances/complete_4_5.gr new file mode 100644 index 0000000..66f816c --- /dev/null +++ b/src/solution_instances/complete_4_5.gr @@ -0,0 +1,5 @@ +5 +6 +7 +8 +9 diff --git a/src/solution_instances/complete_4_5.sol b/src/solution_instances/complete_4_5.sol new file mode 100644 index 0000000..66f816c --- /dev/null +++ b/src/solution_instances/complete_4_5.sol @@ -0,0 +1,5 @@ +5 +6 +7 +8 +9 diff --git a/src/solution_instances/cycle_8_shuffled.gr b/src/solution_instances/cycle_8_shuffled.gr new file mode 100644 index 0000000..3173b89 --- /dev/null +++ b/src/solution_instances/cycle_8_shuffled.gr @@ -0,0 +1,4 @@ +8 +6 +7 +5 diff --git a/src/solution_instances/cycle_8_shuffled.sol b/src/solution_instances/cycle_8_shuffled.sol new file mode 100644 index 0000000..5957c0f --- /dev/null +++ b/src/solution_instances/cycle_8_shuffled.sol @@ -0,0 +1,4 @@ +5 +7 +6 +8 diff --git a/src/solution_instances/cycle_8_sorted.gr b/src/solution_instances/cycle_8_sorted.gr new file mode 100644 index 0000000..3aac70f --- /dev/null +++ b/src/solution_instances/cycle_8_sorted.gr @@ -0,0 +1,4 @@ +5 +6 +7 +8 diff --git a/src/solution_instances/cycle_8_sorted.sol b/src/solution_instances/cycle_8_sorted.sol new file mode 100644 index 0000000..3aac70f --- /dev/null +++ b/src/solution_instances/cycle_8_sorted.sol @@ -0,0 +1,4 @@ +5 +6 +7 +8 diff --git a/visualizer.py b/visualizer.py new file mode 100644 index 0000000..3866f2f --- /dev/null +++ b/visualizer.py @@ -0,0 +1,438 @@ +import tkinter as tk +import networkx as nx +import sys +import time +from dataclasses import dataclass + +# DRAWING PARAMETERS +CANVAS_PAD = 5 # distance to canvas border +NODE_DISTANCE_TOP = 0.5 # distance between nodes (top) +NODE_DISTANCE_BOTTOM = 0.5 # distance between nodes (bottom) +VERTICAL_DISTANCE = 0.5 # distance between the two layers +NODE_SIZE = 20 # node size +LINE_WIDTH = 1 # line thickness +HORIZONTAL_SCALING_FORCE = 0.5 # Horizontal scaling of the force directed drawing +VERTICAL_SCALING_FORCE = 0.5 # Vertical scaling of the force directed drawing + +solution_provided = False +current_mode = None +last_drawing_update_time = time.time() +pos = {} + +@dataclass +class PaceGraph: + a: int = 0 + b: int = 0 + G: nx.Graph = nx.Graph() + + def left(self): + return range(0, self.a) + + def right(self): + return range(self.a, self.a + self.b) + +def empty_bipartite(a, b): + graph = PaceGraph(a, b) + graph.G.add_nodes_from(range(0,a+b)) + + return graph + +def read_graph(filename: str) -> PaceGraph: + graph = None + with open(filename, "r") as f: + a = 0 + b = 0 + edges = [] + for line in f: + if line[0] == "p": + a, b = map(int, line.split(" ")[2:4]) + graph = empty_bipartite(a, b) + elif line[0] == "c": + pass + elif graph: + edges.append(list(map(int, line.split(" ")))) + else: + print("ERROR: Encountered edge before p-line.") + + graph.G.add_edges_from(edges) + + return graph + +# A shortcut to draw circles +def _create_circle(self, x, y, r, **kwargs): + return self.create_oval(x-r, y-r, x+r, y+r, **kwargs) +tk.Canvas.create_circle = _create_circle + +# A callback for the window resize +def on_window_resize(event): + root.update() + width = canvas.winfo_width() + draw_with_mode() + +# For debugging +def log_graph(): + print("Logging graph") + print(f"\t{graph}") + print("Single properties") + print(f"\t{graph.a}") + print(f"\t{graph.b}") + print(f"\t{graph.G}") + print("End logging") + +def log_orders(): + print("Logging orders") + print(f"\ttop order: {top_order}") + print(f"\tinput_bottom: {original_bottom_order}") + print(f"\torder provided: {solution_provided}") + print(f"\tsolution_bottom: {solution_bottom_order}") + print(f"\tcurrent: {bottom_order}") + print("End logging") + +# For fixed node positions this draws the edges +def draw_edges(lcenters, rcenters): + for e in graph.G.edges: + s = lcenters[top_order[e[0]]] + t = rcenters[bottom_order[e[1]]] + canvas.create_line(*s, *t, fill="#AAA", width=LINE_WIDTH*1.5) + canvas.create_line(*s, *t, width=LINE_WIDTH) + +# For fixed node positions this draws the nodes +def draw_nodes(lcenters, rcenters): + hrs = NODE_SIZE/2.0 + color = "#9fc0de" + for i in range(1, graph.a+1): + center = lcenters[top_order[i]] + canvas.create_circle(center[0], center[1], hrs, width=LINE_WIDTH*1.5, outline="#AAA") + canvas.create_circle(center[0], center[1], hrs, width=LINE_WIDTH, fill=color) + canvas.create_text(center, text=f"{i}", fill="black", font=('Arial', int(hrs))) + color = "#f2c894" + for i in range(graph.a+1, graph.a+graph.b+1): + center = rcenters[bottom_order[i]] + canvas.create_circle(center[0], center[1], hrs, width=LINE_WIDTH*1.5, outline="#AAA") + canvas.create_circle(center[0], center[1], hrs, width=LINE_WIDTH, fill=color) + canvas.create_text(center, text=f"{i}", fill="black", font=('Arial', int(hrs))) + +# Method draws a graph with the current orders +def draw_graph(): + canvas.delete('all') + root.update() + canvas_width = canvas.winfo_width() + canvas_height = canvas.winfo_height() + padding_to_center = 2*CANVAS_PAD + 2*NODE_SIZE + horizontal_distance_top = NODE_DISTANCE_TOP * (canvas_width - padding_to_center) / (graph.a - 1) + horizontal_distance_top = max(horizontal_distance_top, NODE_SIZE) + horizontal_distance_bottom = NODE_DISTANCE_BOTTOM * (canvas_width - padding_to_center) / (graph.b - 1) + horizontal_distance_bottom = max(horizontal_distance_bottom, NODE_SIZE) + vertical_distance = max(VERTICAL_DISTANCE*canvas_height-padding_to_center, 50) + horizontal_canvas_padding_top = max(padding_to_center, canvas_width - (horizontal_distance_top*(graph.a-1))) + horizontal_canvas_padding_bottom = max(padding_to_center, canvas_width - (horizontal_distance_bottom*(graph.b-1))) + vertical_padding = max(padding_to_center, canvas_height - vertical_distance) + lcenters = [(horizontal_canvas_padding_top/2 + horizontal_distance_top * i, vertical_padding/2) for i in range(0, graph.a)] + rcenters = [(horizontal_canvas_padding_bottom/2 + horizontal_distance_bottom * i, vertical_padding/2 + vertical_distance) for i in range(0, graph.b)] + draw_edges(lcenters, rcenters) + draw_nodes(lcenters, rcenters) + +def draw_with_mode(mode = None): + current_time = time.time() + global last_drawing_update_time + global current_mode + changed_mode = False + if current_time - last_drawing_update_time > 0.0417: # 24fps, but theres still flickering + last_drawing_update_time = current_time + if mode is not None: + changed_mode = True + current_mode = mode + if current_mode == "input": + global scale_h_scaling_force + scale_h_scaling_force['fg'] = "grey" + scale_v_scaling_force['fg'] = "grey" + scale_h_scaling_force['state'] = "disabled" + scale_v_scaling_force['state'] = "disabled" + scale_node_distance_top['fg'] = "black" + scale_node_distance_bottom['fg'] = "black" + scale_vertical_distance['fg'] = "black" + scale_node_distance_top['state'] = "normal" + scale_node_distance_bottom['state'] = "normal" + scale_vertical_distance['state'] = "normal" + draw_graph_with_order(original_bottom_order) + elif current_mode == "sol": + scale_h_scaling_force['fg'] = "grey" + scale_v_scaling_force['fg'] = "grey" + scale_h_scaling_force['state'] = "disabled" + scale_v_scaling_force['state'] = "disabled" + scale_node_distance_top['fg'] = "black" + scale_node_distance_bottom['fg'] = "black" + scale_vertical_distance['fg'] = "black" + scale_node_distance_top['state'] = "normal" + scale_node_distance_bottom['state'] = "normal" + scale_vertical_distance['state'] = "normal" + if solution_bottom_order == None: + print("No solution order was provided") + else: + draw_graph_with_order(solution_bottom_order) + elif current_mode == "force": + scale_node_distance_top['fg'] = "grey" + scale_node_distance_bottom['fg'] = "grey" + scale_vertical_distance['fg'] = "grey" + scale_node_distance_top['state'] = "disabled" + scale_node_distance_bottom['state'] = "disabled" + scale_vertical_distance['state'] = "disabled" + scale_h_scaling_force['fg'] = "black" + scale_v_scaling_force['fg'] = "black" + scale_h_scaling_force['state'] = "normal" + scale_v_scaling_force['state'] = "normal" + draw_graph_force(changed_mode) + +def draw_graph_with_order(order): + # The method reorders the bottom + # Assumes that order contains the correct values + global bottom_order + bottom_order = order.copy() + draw_graph() + +def draw_graph_force(recompute=False): + canvas.delete('all') + root.update() + canvas_width = canvas.winfo_width() + canvas_height = canvas.winfo_height() + padding_to_center = 2*CANVAS_PAD + 2*NODE_SIZE + hrs = NODE_SIZE/2.0 + global pos + if recompute: + pos = nx.spring_layout(graph.G) + + minx, miny, maxx, maxy = float('inf'), float('inf'), float('-inf'), float('-inf') + for v in graph.G.nodes: + if pos[v][0] > maxx: + maxx = pos[v][0] + if pos[v][0] < minx: + minx = pos[v][0] + if pos[v][1] > maxy: + maxy = pos[v][1] + if pos[v][1] < miny: + miny = pos[v][1] + + deltax = (canvas_width * (1 - HORIZONTAL_SCALING_FORCE)) / 2 + deltay = (canvas_height * (1 - VERTICAL_SCALING_FORCE)) / 2 + + newpos = {} + + for p in pos: + newpos[p] = ( + (pos[p][0]-minx)*(HORIZONTAL_SCALING_FORCE*(canvas_width - padding_to_center)/(maxx-minx))+NODE_SIZE + deltax, + (pos[p][1]-miny)*(VERTICAL_SCALING_FORCE*(canvas_height - padding_to_center)/(maxy-miny))+NODE_SIZE + deltay + ) + + for e in graph.G.edges: + s = tuple(newpos[e[0]]) + t = tuple(newpos[e[1]]) + canvas.create_line(*s, *t, fill="#AAA", width=LINE_WIDTH*1.5) + canvas.create_line(*s, *t, width=LINE_WIDTH) + + for v in graph.G.nodes: + if v <= graph.a: + color = "#9fc0de" + else: + color = "#f2c894" + canvas.create_circle(*newpos[v], hrs, width=LINE_WIDTH*1.5, outline="#AAA") + canvas.create_circle(*newpos[v], hrs, width=LINE_WIDTH, fill=color) + canvas.create_text(*newpos[v], text=f"{v}", fill="black", font=('Arial', int(hrs))) + +# Reading command line arguments +graph = read_graph(sys.argv[1]) +graph.G.remove_node(0) + +# We keep track of the order in which we draw things using a dict +# Key: Node-ID, which starts at 1 (!) +# Value: position, which starts at 0 +## top_order technically not needed, the top is fixed +top_order = {} +for i in range(1, graph.a+1): + top_order[i] = i-1 +## bottom_order can be different between input and output +bottom_order = {} +original_bottom_order = {} +solution_bottom_order = {} + +# We save a standard lexigraphical order +for i, value in enumerate(list(range(graph.a+1, graph.a+graph.b+1))): + original_bottom_order[value] = i + +if len(sys.argv) > 2: + # A solution was given on the commandline + solution_provided = True + + # This assumes that the file conforms to the specified syntax + with open(sys.argv[2]) as file: + counter = 0 + for line in file.readlines(): + if line.startswith('p'): + continue + ID = int(line) + solution_bottom_order[ID] = counter + counter += 1 +else: + # No solution was given on the commandline + solution_provided = False + +root = tk.Tk() +root.title("Pace 2024 - Visualizer") + +width = root.winfo_screenwidth() +height = root.winfo_screenheight() +root.geometry("%dx%d" % (int(width*0.8), int(height*0.8))) + +root.bind("<Configure>", on_window_resize) + +tk.Grid.rowconfigure(root, 0, weight=1) +tk.Grid.columnconfigure(root, 0, weight=2) +tk.Grid.columnconfigure(root, 1, weight=1) +tk.Grid.columnconfigure(root, 2, weight=1) +tk.Grid.columnconfigure(root, 3, weight=1) +tk.Grid.columnconfigure(root, 4, weight=1) +tk.Grid.columnconfigure(root, 5, weight=1) +tk.Grid.columnconfigure(root, 6, weight=1) + +canvas = tk.Canvas(root, bg="white") +canvas.grid(row=0, column=0, columnspan = 7, sticky="nsew") + +canvas_legend_a = tk.Canvas(root, height = 40, width = 40) +canvas_legend_a.grid(row=3, column=3, sticky="e") +canvas_middle = [int(canvas_legend_a['width'])/2, int(canvas_legend_a['height'])/2] +canvas_legend_a.create_circle(*canvas_middle, 15, width=2*1.5, outline="#AAA") +canvas_legend_a.create_circle(*canvas_middle, 15, width=2, fill="#9fc0de") +canvas_legend_a.create_text(*canvas_middle, text=f"ID", fill="black", font=('Arial', int(15))) +legen_label_a = tk.Label (root, text="Fixed layer") +legen_label_a.grid(row=3, column=4, sticky="w") + +canvas_legend_b = tk.Canvas(root, height = 40, width = 40) +canvas_legend_b.grid(row=3, column=5, sticky="e") +canvas_middle = [int(canvas_legend_b['width'])/2, int(canvas_legend_b['height'])/2] +canvas_legend_b.create_circle(*canvas_middle, 15, width=2*1.5, outline="#AAA") +canvas_legend_b.create_circle(*canvas_middle, 15, width=2, fill="#f2c894") +canvas_legend_b.create_text(*canvas_middle, text=f"ID", fill="black", font=('Arial', int(15))) +legen_label_b = tk.Label (root, text="Permutable layer") +legen_label_b.grid(row=3, column=6, sticky="w") + +button_force = tk.Button(root, text="Force layout", command = lambda: draw_with_mode("force")) +button_force.grid(row=3, column=0, sticky="nsew", pady=5, padx=5) +button_input = tk.Button(root, text="Input", command = lambda: draw_with_mode("input")) +button_input.grid(row=4, column=0, sticky="nsew", pady=5, padx=5) +button_solution = tk.Button(root, text="Solution", command = lambda: draw_with_mode("sol")) +button_solution.grid(row=5, column=0, sticky="nsew", pady=5, padx=5) + +root.update() + +def c_distance_top_slider(event): + global NODE_DISTANCE_TOP + NODE_DISTANCE_TOP = scale_node_distance_top.get()/100 + draw_with_mode() + +scale_node_distance_top = tk.Scale(root, from_=1, to=100, orient=tk.HORIZONTAL, showvalue=0, command=c_distance_top_slider, label="Horizontal distance (top)") +scale_node_distance_top.grid(row=3, column=1, columnspan = 2, sticky='ew', pady=5, padx=5) +scale_node_distance_top.set(50) + +def c_distance_bottom_slider(event): + global NODE_DISTANCE_BOTTOM + NODE_DISTANCE_BOTTOM = scale_node_distance_bottom.get()/100 + draw_with_mode() + +scale_node_distance_bottom = tk.Scale(root, from_=1, to=100, orient=tk.HORIZONTAL, showvalue=0, command=c_distance_bottom_slider, label="Horizontal distance (bottom)") +scale_node_distance_bottom.grid(row=4, column=1, columnspan = 2, sticky='ew', pady=5, padx=5) +scale_node_distance_bottom.set(50) + +def c_distance_vertical_slider(event): + global VERTICAL_DISTANCE + VERTICAL_DISTANCE = scale_vertical_distance.get()/100 + draw_with_mode() + +scale_vertical_distance = tk.Scale(root, from_=1, to=100, orient=tk.HORIZONTAL, showvalue=0, command=c_distance_vertical_slider, label="Vertical distance") +scale_vertical_distance.grid(row=5, column=1, columnspan = 2, sticky='ew', pady=5, padx=5) +scale_vertical_distance.set(50) + +def c_node_size_slider(event): + global NODE_SIZE + NODE_SIZE = scale_node_size.get()/10 + draw_with_mode() + +scale_node_size = tk.Scale(root, from_=10, to=500, orient=tk.HORIZONTAL, showvalue=0, command=c_node_size_slider, label="Node size") +scale_node_size.grid(row=4, column=5, columnspan = 2, sticky='ew', pady=5, padx=5) +scale_node_size.set(200) + +def c_line_thickness_slider(event): + global LINE_WIDTH + LINE_WIDTH = scale_line_thickness.get()/100 + draw_with_mode() + +scale_line_thickness = tk.Scale(root, from_=1, to=500, orient=tk.HORIZONTAL, showvalue=0, command=c_line_thickness_slider, label="Line thickness") +scale_line_thickness.grid(row=5, column=5, columnspan = 2, sticky='ew', pady=5, padx=5) +scale_line_thickness.set(100) + +def c_horizontal_scaling_force_slider(event): + global HORIZONTAL_SCALING_FORCE + HORIZONTAL_SCALING_FORCE = scale_h_scaling_force.get()/100 + draw_with_mode() + +scale_h_scaling_force = tk.Scale(root, from_=1, to=100, orient=tk.HORIZONTAL, showvalue=0, command=c_horizontal_scaling_force_slider, label="Horizontal scaling (force)") +scale_h_scaling_force.grid(row=4, column=3, columnspan = 2, sticky='ew', pady=5, padx=5) +scale_h_scaling_force.set(50) + +def c_vertical_scaling_force_slider(event): + global VERTICAL_SCALING_FORCE + VERTICAL_SCALING_FORCE = scale_v_scaling_force.get()/100 + draw_with_mode() + +scale_v_scaling_force = tk.Scale(root, from_=1, to=100, orient=tk.HORIZONTAL, showvalue=0, command=c_vertical_scaling_force_slider, label="Vertical scaling (force)") +scale_v_scaling_force.grid(row=5, column=3, columnspan = 2, sticky='ew', pady=5, padx=5) +scale_v_scaling_force.set(50) + +# log_graph() + +k_c = 0 +turtle = r"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" +t_image = tk.PhotoImage(data=turtle) +def foxhound(event): + global k_c + if k_c == 0 or k_c == 1: + if event.keysym=='Up': + k_c += 1 + else: + k_c = 0 + elif k_c == 2 or k_c == 3: + if event.keysym=='Down': + k_c += 1 + else: + k_c = 0 + elif k_c == 4 or k_c == 6: + if event.keysym=='Left': + k_c += 1 + else: + k_c = 0 + elif k_c == 5 or k_c == 7: + if event.keysym=='Right': + k_c += 1 + else: + k_c = 0 + elif k_c == 8: + if event.keysym=='A' or event.keysym=='a': + k_c += 1 + else: + k_c = 0 + elif k_c == 9: + if event.keysym=='B' or event.keysym=='b': + k_c += 1 + else: + k_c = 0 + elif k_c == 10: + if event.keysym=='Return': + top = tk.Toplevel(root) + top.geometry("%dx%d" % (400, 340)) + top.title("You found us!") + label = tk.Label(top, image=t_image) + label.pack() + k_c = 0 + else: + k_c = 0 + +root.bind("<KeyRelease>", foxhound) +root.mainloop() -- GitLab