# Instance Class FindingNumbers

Class Tree [Root]    Puzzles (806) In this problem the input is a square made of numbers and you have to find a set of numbers that are hidden in it. The numbers may be there horizontally or vertically and in both directions. For example, given the square: 0 2 5 3 1 6 7 2 5 And the numbers: 613, 212, and 730, the correct answer would be that: 613 starts at square (3, 2) and goes to left 212 starts at (2, 3) to down. 730 starts at (1, 1) to up. The input instances are given as the set of facts: grid(x, y, d). -- the grid square (x, y) contains the number d. number(n, i, d). -- the ith digit of the nth number is d. The above example would be represented as: grid(1,3,0). grid(2,3,2). grid(3,3,5). grid(1,2,3). grid(2,2,1). grid(3,2,6). grid(1,1,7). grid(2,1,2). grid(3,1,5). number(1,0,6). number(1,1,1). number(1,2,3). number(2,0,2). number(2,1,2). number(2,2,2). number(3,0,7). number(3,1,3). number(3,2,0). Parameters: - The size of the square. In the benchmarks this ranges from 3x3 up to 70x70. - Length of the numbers. This ranges from n-2 to n where n is the square size. - Amount of numbers to find. This ranges from 60% to 100% of all possible strings of a given length in the square. - Number of different symbols in the square. All examples are generated randomly with an alphabet of 8 different digits. However, some of the small benchmarks may not contain all of them. The instance files are named using the schema: square_size_numbers_length_symbols.lp In general, the problem goes more difficult when the parameters increase. However, when the number of strings to find increases the problem may become easier since the solution is more constrained. Martin Gebser square_10_96_8_8     square_14_100_12_8     square_18_115_17_8     square_20_128_19_8     square_25_120_24_8     square_3_7_3_8     square_40_384_38_8     square_5_16_5_8     square_60_432_58_8     square_6_57_4_8     square_70_504_68_8     square_8_51_7_8    un-/mark all