summaryrefslogtreecommitdiff
path: root/sat
diff options
context:
space:
mode:
authorzhang <zch921005@126.com>2022-03-25 00:11:34 +0800
committerzhang <zch921005@126.com>2022-03-25 00:11:34 +0800
commit3ed1c5d0e4018fc70012a6209a859a059f7127b5 (patch)
tree2ca318fb2e23daf2964189a751fb61b20aa7515a /sat
parent6f68e1818229e0d2dad760062e6b5bb137b88f5b (diff)
更新脚本
Diffstat (limited to 'sat')
-rw-r--r--sat/__init__.py0
-rw-r--r--sat/color.py1561
2 files changed, 1561 insertions, 0 deletions
diff --git a/sat/__init__.py b/sat/__init__.py
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/sat/__init__.py
diff --git a/sat/color.py b/sat/color.py
new file mode 100644
index 0000000..094370d
--- /dev/null
+++ b/sat/color.py
@@ -0,0 +1,1561 @@
+N = 120
+# X(G) = 9
+COLORS = 8
+# M = 1276
+EDGES = [
+ [1, 16],
+ [1, 20],
+ [1, 94],
+ [1, 80],
+ [1, 57],
+ [1, 62],
+ [1, 89],
+ [1, 113],
+ [1, 5],
+ [1, 21],
+ [1, 15],
+ [2, 24],
+ [2, 30],
+ [2, 77],
+ [2, 92],
+ [2, 41],
+ [2, 55],
+ [2, 6],
+ [2, 54],
+ [3, 100],
+ [3, 44],
+ [3, 105],
+ [3, 91],
+ [3, 42],
+ [3, 103],
+ [3, 90],
+ [3, 22],
+ [3, 67],
+ [3, 31],
+ [3, 115],
+ [3, 71],
+ [4, 38],
+ [4, 85],
+ [4, 49],
+ [4, 50],
+ [4, 61],
+ [4, 63],
+ [4, 99],
+ [4, 96],
+ [4, 84],
+ [4, 107],
+ [4, 12],
+ [5, 56],
+ [5, 26],
+ [5, 72],
+ [5, 38],
+ [5, 32],
+ [5, 85],
+ [5, 76],
+ [5, 1],
+ [5, 34],
+ [5, 53],
+ [6, 11],
+ [6, 87],
+ [6, 13],
+ [6, 14],
+ [6, 41],
+ [6, 24],
+ [6, 55],
+ [6, 92],
+ [6, 2],
+ [6, 60],
+ [7, 66],
+ [7, 83],
+ [7, 21],
+ [7, 118],
+ [7, 48],
+ [7, 10],
+ [7, 120],
+ [7, 25],
+ [7, 75],
+ [7, 64],
+ [7, 28],
+ [7, 51],
+ [8, 73],
+ [8, 18],
+ [8, 53],
+ [8, 86],
+ [8, 71],
+ [8, 104],
+ [8, 98],
+ [8, 38],
+ [8, 46],
+ [8, 100],
+ [9, 33],
+ [9, 31],
+ [9, 69],
+ [9, 58],
+ [9, 116],
+ [9, 17],
+ [9, 51],
+ [9, 70],
+ [9, 101],
+ [9, 119],
+ [9, 38],
+ [10, 25],
+ [10, 75],
+ [10, 48],
+ [10, 83],
+ [10, 21],
+ [10, 7],
+ [10, 64],
+ [10, 35],
+ [10, 120],
+ [10, 36],
+ [10, 118],
+ [11, 6],
+ [11, 55],
+ [11, 14],
+ [11, 41],
+ [11, 60],
+ [11, 87],
+ [11, 30],
+ [11, 54],
+ [11, 13],
+ [12, 117],
+ [12, 19],
+ [12, 43],
+ [12, 102],
+ [12, 23],
+ [12, 88],
+ [12, 35],
+ [12, 97],
+ [12, 68],
+ [12, 29],
+ [12, 4],
+ [13, 60],
+ [13, 41],
+ [13, 6],
+ [13, 87],
+ [13, 55],
+ [13, 14],
+ [13, 54],
+ [13, 77],
+ [13, 30],
+ [13, 11],
+ [14, 55],
+ [14, 60],
+ [14, 11],
+ [14, 6],
+ [14, 87],
+ [14, 13],
+ [14, 77],
+ [14, 54],
+ [14, 24],
+ [14, 41],
+ [15, 53],
+ [15, 95],
+ [15, 52],
+ [15, 65],
+ [15, 59],
+ [15, 108],
+ [15, 39],
+ [15, 66],
+ [15, 37],
+ [15, 112],
+ [15, 88],
+ [15, 1],
+ [16, 65],
+ [16, 1],
+ [16, 62],
+ [16, 80],
+ [16, 94],
+ [16, 47],
+ [16, 57],
+ [16, 113],
+ [16, 89],
+ [16, 26],
+ [16, 27],
+ [16, 34],
+ [17, 31],
+ [17, 34],
+ [17, 28],
+ [17, 9],
+ [17, 101],
+ [17, 69],
+ [17, 33],
+ [17, 79],
+ [17, 42],
+ [17, 103],
+ [17, 115],
+ [18, 20],
+ [18, 8],
+ [18, 93],
+ [18, 100],
+ [18, 86],
+ [18, 27],
+ [18, 84],
+ [18, 73],
+ [18, 53],
+ [18, 71],
+ [18, 98],
+ [19, 61],
+ [19, 97],
+ [19, 12],
+ [19, 23],
+ [19, 35],
+ [19, 43],
+ [19, 117],
+ [19, 102],
+ [19, 29],
+ [19, 80],
+ [19, 114],
+ [19, 90],
+ [20, 18],
+ [20, 113],
+ [20, 1],
+ [20, 89],
+ [20, 62],
+ [20, 80],
+ [20, 47],
+ [20, 94],
+ [20, 57],
+ [20, 65],
+ [20, 56],
+ [20, 67],
+ [21, 83],
+ [21, 118],
+ [21, 7],
+ [21, 10],
+ [21, 120],
+ [21, 25],
+ [21, 75],
+ [21, 48],
+ [21, 1],
+ [22, 39],
+ [22, 44],
+ [22, 105],
+ [22, 91],
+ [22, 42],
+ [22, 3],
+ [22, 90],
+ [22, 103],
+ [22, 67],
+ [22, 74],
+ [23, 27],
+ [23, 102],
+ [23, 43],
+ [23, 19],
+ [23, 97],
+ [23, 12],
+ [23, 35],
+ [23, 117],
+ [23, 59],
+ [23, 44],
+ [23, 57],
+ [23, 95],
+ [23, 38],
+ [24, 2],
+ [24, 54],
+ [24, 30],
+ [24, 92],
+ [24, 6],
+ [24, 60],
+ [24, 14],
+ [24, 77],
+ [25, 10],
+ [25, 120],
+ [25, 118],
+ [25, 75],
+ [25, 83],
+ [25, 21],
+ [25, 7],
+ [25, 28],
+ [25, 31],
+ [25, 48],
+ [25, 50],
+ [26, 5],
+ [26, 109],
+ [26, 93],
+ [26, 64],
+ [26, 34],
+ [26, 72],
+ [26, 56],
+ [26, 16],
+ [26, 76],
+ [26, 92],
+ [26, 51],
+ [27, 23],
+ [27, 65],
+ [27, 76],
+ [27, 38],
+ [27, 84],
+ [27, 72],
+ [27, 88],
+ [27, 18],
+ [27, 95],
+ [27, 47],
+ [27, 16],
+ [27, 113],
+ [28, 58],
+ [28, 79],
+ [28, 68],
+ [28, 17],
+ [28, 32],
+ [28, 109],
+ [28, 120],
+ [28, 25],
+ [28, 89],
+ [28, 7],
+ [28, 75],
+ [29, 52],
+ [29, 65],
+ [29, 39],
+ [29, 108],
+ [29, 112],
+ [29, 37],
+ [29, 19],
+ [29, 95],
+ [29, 74],
+ [29, 12],
+ [30, 92],
+ [30, 2],
+ [30, 24],
+ [30, 77],
+ [30, 54],
+ [30, 55],
+ [30, 11],
+ [30, 41],
+ [30, 13],
+ [30, 93],
+ [31, 17],
+ [31, 9],
+ [31, 58],
+ [31, 33],
+ [31, 79],
+ [31, 51],
+ [31, 70],
+ [31, 3],
+ [31, 106],
+ [31, 25],
+ [31, 110],
+ [32, 114],
+ [32, 69],
+ [32, 5],
+ [32, 28],
+ [32, 78],
+ [32, 101],
+ [32, 110],
+ [32, 115],
+ [32, 85],
+ [32, 79],
+ [32, 36],
+ [33, 113],
+ [33, 9],
+ [33, 38],
+ [33, 31],
+ [33, 106],
+ [33, 110],
+ [33, 51],
+ [33, 17],
+ [33, 91],
+ [33, 116],
+ [33, 69],
+ [34, 37],
+ [34, 88],
+ [34, 109],
+ [34, 17],
+ [34, 56],
+ [34, 93],
+ [34, 26],
+ [34, 76],
+ [34, 106],
+ [34, 72],
+ [34, 16],
+ [34, 5],
+ [34, 65],
+ [35, 43],
+ [35, 117],
+ [35, 102],
+ [35, 19],
+ [35, 97],
+ [35, 23],
+ [35, 12],
+ [35, 10],
+ [35, 89],
+ [35, 80],
+ [36, 49],
+ [36, 98],
+ [36, 64],
+ [36, 111],
+ [36, 116],
+ [36, 115],
+ [36, 10],
+ [36, 32],
+ [37, 34],
+ [37, 39],
+ [37, 95],
+ [37, 59],
+ [37, 112],
+ [37, 65],
+ [37, 29],
+ [37, 108],
+ [37, 15],
+ [37, 52],
+ [37, 104],
+ [37, 57],
+ [38, 4],
+ [38, 106],
+ [38, 51],
+ [38, 33],
+ [38, 27],
+ [38, 5],
+ [38, 58],
+ [38, 70],
+ [38, 116],
+ [38, 8],
+ [38, 9],
+ [38, 81],
+ [38, 23],
+ [39, 22],
+ [39, 37],
+ [39, 112],
+ [39, 29],
+ [39, 65],
+ [39, 52],
+ [39, 15],
+ [39, 59],
+ [39, 117],
+ [39, 98],
+ [39, 90],
+ [40, 74],
+ [40, 119],
+ [40, 82],
+ [40, 66],
+ [40, 46],
+ [40, 81],
+ [40, 73],
+ [40, 45],
+ [40, 107],
+ [41, 87],
+ [41, 13],
+ [41, 55],
+ [41, 11],
+ [41, 6],
+ [41, 2],
+ [41, 60],
+ [41, 30],
+ [41, 14],
+ [42, 91],
+ [42, 67],
+ [42, 103],
+ [42, 3],
+ [42, 44],
+ [42, 22],
+ [42, 90],
+ [42, 105],
+ [42, 17],
+ [42, 106],
+ [43, 35],
+ [43, 23],
+ [43, 12],
+ [43, 117],
+ [43, 19],
+ [43, 102],
+ [43, 97],
+ [43, 105],
+ [43, 70],
+ [43, 111],
+ [44, 88],
+ [44, 3],
+ [44, 90],
+ [44, 105],
+ [44, 22],
+ [44, 67],
+ [44, 42],
+ [44, 91],
+ [44, 97],
+ [44, 103],
+ [44, 23],
+ [44, 76],
+ [45, 100],
+ [45, 81],
+ [45, 119],
+ [45, 46],
+ [45, 74],
+ [45, 66],
+ [45, 82],
+ [45, 52],
+ [45, 117],
+ [45, 40],
+ [45, 86],
+ [46, 119],
+ [46, 66],
+ [46, 45],
+ [46, 111],
+ [46, 81],
+ [46, 74],
+ [46, 40],
+ [46, 82],
+ [46, 102],
+ [46, 8],
+ [46, 104],
+ [47, 94],
+ [47, 89],
+ [47, 62],
+ [47, 113],
+ [47, 16],
+ [47, 20],
+ [47, 57],
+ [47, 80],
+ [47, 27],
+ [47, 59],
+ [48, 84],
+ [48, 10],
+ [48, 120],
+ [48, 7],
+ [48, 75],
+ [48, 118],
+ [48, 83],
+ [48, 21],
+ [48, 114],
+ [48, 25],
+ [49, 36],
+ [49, 4],
+ [49, 76],
+ [49, 50],
+ [49, 96],
+ [49, 63],
+ [49, 61],
+ [49, 113],
+ [49, 99],
+ [49, 107],
+ [49, 109],
+ [49, 85],
+ [50, 96],
+ [50, 4],
+ [50, 107],
+ [50, 49],
+ [50, 61],
+ [50, 63],
+ [50, 99],
+ [50, 51],
+ [50, 78],
+ [50, 25],
+ [51, 38],
+ [51, 70],
+ [51, 106],
+ [51, 110],
+ [51, 31],
+ [51, 9],
+ [51, 33],
+ [51, 50],
+ [51, 94],
+ [51, 26],
+ [51, 7],
+ [52, 98],
+ [52, 29],
+ [52, 15],
+ [52, 108],
+ [52, 95],
+ [52, 39],
+ [52, 59],
+ [52, 45],
+ [52, 100],
+ [52, 37],
+ [52, 73],
+ [53, 15],
+ [53, 71],
+ [53, 100],
+ [53, 98],
+ [53, 8],
+ [53, 104],
+ [53, 73],
+ [53, 86],
+ [53, 18],
+ [53, 112],
+ [53, 5],
+ [54, 77],
+ [54, 24],
+ [54, 92],
+ [54, 30],
+ [54, 13],
+ [54, 14],
+ [54, 11],
+ [54, 2],
+ [55, 14],
+ [55, 11],
+ [55, 41],
+ [55, 60],
+ [55, 13],
+ [55, 30],
+ [55, 6],
+ [55, 2],
+ [55, 87],
+ [56, 5],
+ [56, 88],
+ [56, 68],
+ [56, 34],
+ [56, 109],
+ [56, 76],
+ [56, 93],
+ [56, 26],
+ [56, 84],
+ [56, 20],
+ [56, 72],
+ [57, 107],
+ [57, 62],
+ [57, 94],
+ [57, 113],
+ [57, 89],
+ [57, 1],
+ [57, 16],
+ [57, 47],
+ [57, 20],
+ [57, 23],
+ [57, 37],
+ [58, 68],
+ [58, 116],
+ [58, 28],
+ [58, 31],
+ [58, 9],
+ [58, 76],
+ [58, 38],
+ [58, 115],
+ [58, 106],
+ [58, 110],
+ [58, 70],
+ [58, 101],
+ [59, 89],
+ [59, 112],
+ [59, 108],
+ [59, 37],
+ [59, 15],
+ [59, 95],
+ [59, 52],
+ [59, 39],
+ [59, 23],
+ [59, 65],
+ [59, 47],
+ [59, 66],
+ [60, 13],
+ [60, 14],
+ [60, 87],
+ [60, 55],
+ [60, 11],
+ [60, 77],
+ [60, 41],
+ [60, 24],
+ [60, 92],
+ [60, 6],
+ [61, 19],
+ [61, 110],
+ [61, 63],
+ [61, 85],
+ [61, 4],
+ [61, 96],
+ [61, 50],
+ [61, 107],
+ [61, 49],
+ [61, 78],
+ [61, 99],
+ [62, 57],
+ [62, 16],
+ [62, 47],
+ [62, 20],
+ [62, 89],
+ [62, 1],
+ [62, 80],
+ [62, 94],
+ [62, 114],
+ [62, 103],
+ [62, 96],
+ [63, 106],
+ [63, 61],
+ [63, 96],
+ [63, 107],
+ [63, 4],
+ [63, 49],
+ [63, 50],
+ [63, 93],
+ [63, 99],
+ [63, 103],
+ [64, 36],
+ [64, 114],
+ [64, 26],
+ [64, 70],
+ [64, 84],
+ [64, 10],
+ [64, 119],
+ [64, 7],
+ [64, 120],
+ [65, 16],
+ [65, 27],
+ [65, 108],
+ [65, 29],
+ [65, 15],
+ [65, 39],
+ [65, 37],
+ [65, 95],
+ [65, 112],
+ [65, 20],
+ [65, 59],
+ [65, 76],
+ [65, 34],
+ [66, 7],
+ [66, 82],
+ [66, 46],
+ [66, 119],
+ [66, 45],
+ [66, 40],
+ [66, 15],
+ [66, 95],
+ [66, 74],
+ [66, 81],
+ [66, 59],
+ [66, 68],
+ [67, 42],
+ [67, 105],
+ [67, 44],
+ [67, 88],
+ [67, 103],
+ [67, 91],
+ [67, 3],
+ [67, 90],
+ [67, 104],
+ [67, 22],
+ [67, 20],
+ [68, 58],
+ [68, 56],
+ [68, 28],
+ [68, 72],
+ [68, 69],
+ [68, 111],
+ [68, 101],
+ [68, 109],
+ [68, 12],
+ [68, 66],
+ [69, 79],
+ [69, 9],
+ [69, 32],
+ [69, 115],
+ [69, 101],
+ [69, 68],
+ [69, 17],
+ [69, 111],
+ [69, 33],
+ [70, 79],
+ [70, 51],
+ [70, 110],
+ [70, 116],
+ [70, 64],
+ [70, 38],
+ [70, 31],
+ [70, 9],
+ [70, 58],
+ [70, 43],
+ [71, 100],
+ [71, 98],
+ [71, 53],
+ [71, 73],
+ [71, 104],
+ [71, 81],
+ [71, 119],
+ [71, 8],
+ [71, 86],
+ [71, 18],
+ [71, 3],
+ [72, 76],
+ [72, 5],
+ [72, 88],
+ [72, 27],
+ [72, 68],
+ [72, 26],
+ [72, 109],
+ [72, 34],
+ [72, 97],
+ [72, 56],
+ [72, 83],
+ [73, 88],
+ [73, 8],
+ [73, 104],
+ [73, 71],
+ [73, 86],
+ [73, 108],
+ [73, 53],
+ [73, 18],
+ [73, 100],
+ [73, 40],
+ [73, 52],
+ [74, 40],
+ [74, 82],
+ [74, 45],
+ [74, 46],
+ [74, 119],
+ [74, 81],
+ [74, 66],
+ [74, 29],
+ [74, 22],
+ [75, 10],
+ [75, 120],
+ [75, 25],
+ [75, 118],
+ [75, 48],
+ [75, 83],
+ [75, 21],
+ [75, 7],
+ [75, 85],
+ [75, 28],
+ [76, 79],
+ [76, 72],
+ [76, 27],
+ [76, 49],
+ [76, 109],
+ [76, 58],
+ [76, 56],
+ [76, 34],
+ [76, 5],
+ [76, 26],
+ [76, 65],
+ [76, 44],
+ [77, 54],
+ [77, 92],
+ [77, 2],
+ [77, 30],
+ [77, 93],
+ [77, 60],
+ [77, 14],
+ [77, 13],
+ [77, 87],
+ [77, 24],
+ [78, 109],
+ [78, 107],
+ [78, 79],
+ [78, 99],
+ [78, 32],
+ [78, 61],
+ [78, 85],
+ [78, 50],
+ [78, 96],
+ [79, 76],
+ [79, 70],
+ [79, 69],
+ [79, 28],
+ [79, 78],
+ [79, 31],
+ [79, 116],
+ [79, 88],
+ [79, 85],
+ [79, 17],
+ [79, 32],
+ [80, 89],
+ [80, 113],
+ [80, 16],
+ [80, 1],
+ [80, 20],
+ [80, 94],
+ [80, 62],
+ [80, 47],
+ [80, 19],
+ [80, 35],
+ [80, 86],
+ [81, 45],
+ [81, 82],
+ [81, 71],
+ [81, 46],
+ [81, 119],
+ [81, 74],
+ [81, 40],
+ [81, 66],
+ [81, 38],
+ [82, 66],
+ [82, 81],
+ [82, 74],
+ [82, 40],
+ [82, 45],
+ [82, 114],
+ [82, 119],
+ [82, 46],
+ [82, 86],
+ [82, 104],
+ [82, 118],
+ [83, 21],
+ [83, 7],
+ [83, 10],
+ [83, 120],
+ [83, 25],
+ [83, 75],
+ [83, 48],
+ [83, 118],
+ [83, 72],
+ [84, 93],
+ [84, 48],
+ [84, 27],
+ [84, 64],
+ [84, 18],
+ [84, 56],
+ [84, 4],
+ [85, 4],
+ [85, 61],
+ [85, 99],
+ [85, 101],
+ [85, 5],
+ [85, 109],
+ [85, 79],
+ [85, 78],
+ [85, 32],
+ [85, 75],
+ [85, 49],
+ [86, 100],
+ [86, 104],
+ [86, 73],
+ [86, 18],
+ [86, 8],
+ [86, 98],
+ [86, 53],
+ [86, 71],
+ [86, 82],
+ [86, 80],
+ [86, 45],
+ [87, 41],
+ [87, 6],
+ [87, 60],
+ [87, 13],
+ [87, 14],
+ [87, 11],
+ [87, 92],
+ [87, 77],
+ [87, 55],
+ [88, 44],
+ [88, 73],
+ [88, 34],
+ [88, 56],
+ [88, 72],
+ [88, 67],
+ [88, 27],
+ [88, 12],
+ [88, 79],
+ [88, 89],
+ [88, 15],
+ [88, 100],
+ [89, 59],
+ [89, 80],
+ [89, 47],
+ [89, 20],
+ [89, 57],
+ [89, 62],
+ [89, 113],
+ [89, 1],
+ [89, 16],
+ [89, 88],
+ [89, 35],
+ [89, 28],
+ [90, 44],
+ [90, 103],
+ [90, 91],
+ [90, 105],
+ [90, 3],
+ [90, 42],
+ [90, 22],
+ [90, 67],
+ [90, 39],
+ [90, 19],
+ [91, 42],
+ [91, 3],
+ [91, 90],
+ [91, 103],
+ [91, 22],
+ [91, 44],
+ [91, 67],
+ [91, 105],
+ [91, 98],
+ [91, 33],
+ [91, 111],
+ [92, 30],
+ [92, 77],
+ [92, 54],
+ [92, 24],
+ [92, 2],
+ [92, 87],
+ [92, 6],
+ [92, 60],
+ [92, 26],
+ [93, 84],
+ [93, 106],
+ [93, 18],
+ [93, 26],
+ [93, 34],
+ [93, 77],
+ [93, 56],
+ [93, 96],
+ [93, 63],
+ [93, 30],
+ [94, 116],
+ [94, 47],
+ [94, 57],
+ [94, 1],
+ [94, 16],
+ [94, 113],
+ [94, 80],
+ [94, 20],
+ [94, 62],
+ [94, 118],
+ [94, 117],
+ [94, 51],
+ [95, 15],
+ [95, 37],
+ [95, 112],
+ [95, 52],
+ [95, 59],
+ [95, 65],
+ [95, 27],
+ [95, 66],
+ [95, 29],
+ [95, 108],
+ [95, 23],
+ [96, 50],
+ [96, 99],
+ [96, 63],
+ [96, 61],
+ [96, 49],
+ [96, 93],
+ [96, 107],
+ [96, 4],
+ [96, 62],
+ [96, 78],
+ [97, 19],
+ [97, 102],
+ [97, 117],
+ [97, 23],
+ [97, 35],
+ [97, 44],
+ [97, 43],
+ [97, 12],
+ [97, 111],
+ [97, 72],
+ [97, 108],
+ [98, 52],
+ [98, 71],
+ [98, 36],
+ [98, 111],
+ [98, 53],
+ [98, 104],
+ [98, 100],
+ [98, 86],
+ [98, 91],
+ [98, 8],
+ [98, 39],
+ [98, 18],
+ [99, 101],
+ [99, 96],
+ [99, 85],
+ [99, 78],
+ [99, 107],
+ [99, 4],
+ [99, 50],
+ [99, 49],
+ [99, 63],
+ [99, 61],
+ [100, 3],
+ [100, 71],
+ [100, 45],
+ [100, 86],
+ [100, 53],
+ [100, 18],
+ [100, 104],
+ [100, 98],
+ [100, 52],
+ [100, 73],
+ [100, 112],
+ [100, 88],
+ [100, 8],
+ [101, 99],
+ [101, 116],
+ [101, 115],
+ [101, 85],
+ [101, 69],
+ [101, 17],
+ [101, 32],
+ [101, 68],
+ [101, 9],
+ [101, 110],
+ [101, 58],
+ [102, 23],
+ [102, 97],
+ [102, 35],
+ [102, 12],
+ [102, 117],
+ [102, 43],
+ [102, 19],
+ [102, 104],
+ [102, 114],
+ [102, 46],
+ [103, 90],
+ [103, 42],
+ [103, 91],
+ [103, 3],
+ [103, 67],
+ [103, 105],
+ [103, 44],
+ [103, 22],
+ [103, 62],
+ [103, 17],
+ [103, 63],
+ [104, 73],
+ [104, 86],
+ [104, 71],
+ [104, 100],
+ [104, 98],
+ [104, 53],
+ [104, 8],
+ [104, 102],
+ [104, 67],
+ [104, 37],
+ [104, 82],
+ [104, 46],
+ [105, 3],
+ [105, 44],
+ [105, 67],
+ [105, 22],
+ [105, 90],
+ [105, 103],
+ [105, 91],
+ [105, 42],
+ [105, 43],
+ [105, 117],
+ [105, 112],
+ [106, 38],
+ [106, 63],
+ [106, 93],
+ [106, 51],
+ [106, 33],
+ [106, 110],
+ [106, 116],
+ [106, 34],
+ [106, 58],
+ [106, 31],
+ [106, 42],
+ [107, 57],
+ [107, 78],
+ [107, 50],
+ [107, 63],
+ [107, 99],
+ [107, 61],
+ [107, 110],
+ [107, 96],
+ [107, 49],
+ [107, 4],
+ [107, 40],
+ [108, 65],
+ [108, 59],
+ [108, 52],
+ [108, 29],
+ [108, 15],
+ [108, 73],
+ [108, 37],
+ [108, 112],
+ [108, 113],
+ [108, 95],
+ [108, 97],
+ [109, 78],
+ [109, 34],
+ [109, 26],
+ [109, 76],
+ [109, 56],
+ [109, 28],
+ [109, 85],
+ [109, 72],
+ [109, 68],
+ [109, 49],
+ [109, 120],
+ [110, 61],
+ [110, 116],
+ [110, 70],
+ [110, 51],
+ [110, 106],
+ [110, 33],
+ [110, 107],
+ [110, 32],
+ [110, 58],
+ [110, 101],
+ [110, 31],
+ [111, 98],
+ [111, 46],
+ [111, 115],
+ [111, 36],
+ [111, 68],
+ [111, 69],
+ [111, 97],
+ [111, 91],
+ [111, 43],
+ [112, 59],
+ [112, 39],
+ [112, 95],
+ [112, 37],
+ [112, 29],
+ [112, 65],
+ [112, 108],
+ [112, 15],
+ [112, 100],
+ [112, 53],
+ [112, 105],
+ [113, 33],
+ [113, 20],
+ [113, 80],
+ [113, 57],
+ [113, 47],
+ [113, 94],
+ [113, 89],
+ [113, 16],
+ [113, 1],
+ [113, 49],
+ [113, 108],
+ [113, 27],
+ [114, 115],
+ [114, 32],
+ [114, 64],
+ [114, 82],
+ [114, 62],
+ [114, 102],
+ [114, 48],
+ [114, 19],
+ [115, 114],
+ [115, 101],
+ [115, 69],
+ [115, 111],
+ [115, 58],
+ [115, 36],
+ [115, 32],
+ [115, 3],
+ [115, 17],
+ [116, 94],
+ [116, 58],
+ [116, 110],
+ [116, 101],
+ [116, 70],
+ [116, 9],
+ [116, 79],
+ [116, 106],
+ [116, 36],
+ [116, 38],
+ [116, 33],
+ [116, 119],
+ [117, 12],
+ [117, 35],
+ [117, 97],
+ [117, 43],
+ [117, 102],
+ [117, 19],
+ [117, 23],
+ [117, 39],
+ [117, 94],
+ [117, 45],
+ [117, 105],
+ [118, 120],
+ [118, 21],
+ [118, 25],
+ [118, 7],
+ [118, 75],
+ [118, 48],
+ [118, 94],
+ [118, 83],
+ [118, 10],
+ [118, 82],
+ [119, 46],
+ [119, 45],
+ [119, 66],
+ [119, 40],
+ [119, 71],
+ [119, 81],
+ [119, 74],
+ [119, 82],
+ [119, 64],
+ [119, 9],
+ [119, 116],
+ [120, 118],
+ [120, 25],
+ [120, 75],
+ [120, 48],
+ [120, 83],
+ [120, 21],
+ [120, 7],
+ [120, 28],
+ [120, 10],
+ [120, 64],
+ [120, 109],
+]
+
+# N = 47
+# # X(G) = 6
+# COLORS = 5
+# # M = 236
+# EDGES = [
+# [1, 2],
+# [1, 4],
+# [1, 7],
+# [1, 9],
+# [1, 13],
+# [1, 15],
+# [1, 18],
+# [1, 20],
+# [1, 25],
+# [1, 27],
+# [1, 30],
+# [1, 32],
+# [1, 36],
+# [1, 38],
+# [1, 41],
+# [1, 43],
+# [2, 3],
+# [2, 6],
+# [2, 8],
+# [2, 12],
+# [2, 14],
+# [2, 17],
+# [2, 19],
+# [2, 24],
+# [2, 26],
+# [2, 29],
+# [2, 31],
+# [2, 35],
+# [2, 37],
+# [2, 40],
+# [2, 42],
+# [3, 5],
+# [3, 7],
+# [3, 10],
+# [3, 13],
+# [3, 16],
+# [3, 18],
+# [3, 21],
+# [3, 25],
+# [3, 28],
+# [3, 30],
+# [3, 33],
+# [3, 36],
+# [3, 39],
+# [3, 41],
+# [3, 44],
+# [4, 5],
+# [4, 6],
+# [4, 10],
+# [4, 12],
+# [4, 16],
+# [4, 17],
+# [4, 21],
+# [4, 24],
+# [4, 28],
+# [4, 29],
+# [4, 33],
+# [4, 35],
+# [4, 39],
+# [4, 40],
+# [4, 44],
+# [5, 8],
+# [5, 9],
+# [5, 14],
+# [5, 15],
+# [5, 19],
+# [5, 20],
+# [5, 26],
+# [5, 27],
+# [5, 31],
+# [5, 32],
+# [5, 37],
+# [5, 38],
+# [5, 42],
+# [5, 43],
+# [6, 11],
+# [6, 13],
+# [6, 15],
+# [6, 22],
+# [6, 25],
+# [6, 27],
+# [6, 34],
+# [6, 36],
+# [6, 38],
+# [6, 45],
+# [7, 11],
+# [7, 12],
+# [7, 14],
+# [7, 22],
+# [7, 24],
+# [7, 26],
+# [7, 34],
+# [7, 35],
+# [7, 37],
+# [7, 45],
+# [8, 11],
+# [8, 13],
+# [8, 16],
+# [8, 22],
+# [8, 25],
+# [8, 28],
+# [8, 34],
+# [8, 36],
+# [8, 39],
+# [8, 45],
+# [9, 11],
+# [9, 12],
+# [9, 16],
+# [9, 22],
+# [9, 24],
+# [9, 28],
+# [9, 34],
+# [9, 35],
+# [9, 39],
+# [9, 45],
+# [10, 11],
+# [10, 14],
+# [10, 15],
+# [10, 22],
+# [10, 26],
+# [10, 27],
+# [10, 34],
+# [10, 37],
+# [10, 38],
+# [10, 45],
+# [11, 17],
+# [11, 18],
+# [11, 19],
+# [11, 20],
+# [11, 21],
+# [11, 29],
+# [11, 30],
+# [11, 31],
+# [11, 32],
+# [11, 33],
+# [11, 40],
+# [11, 41],
+# [11, 42],
+# [11, 43],
+# [11, 44],
+# [12, 23],
+# [12, 25],
+# [12, 27],
+# [12, 30],
+# [12, 32],
+# [12, 46],
+# [13, 23],
+# [13, 24],
+# [13, 26],
+# [13, 29],
+# [13, 31],
+# [13, 46],
+# [14, 23],
+# [14, 25],
+# [14, 28],
+# [14, 30],
+# [14, 33],
+# [14, 46],
+# [15, 23],
+# [15, 24],
+# [15, 28],
+# [15, 29],
+# [15, 33],
+# [15, 46],
+# [16, 23],
+# [16, 26],
+# [16, 27],
+# [16, 31],
+# [16, 32],
+# [16, 46],
+# [17, 23],
+# [17, 25],
+# [17, 27],
+# [17, 34],
+# [17, 46],
+# [18, 23],
+# [18, 24],
+# [18, 26],
+# [18, 34],
+# [18, 46],
+# [19, 23],
+# [19, 25],
+# [19, 28],
+# [19, 34],
+# [19, 46],
+# [20, 23],
+# [20, 24],
+# [20, 28],
+# [20, 34],
+# [20, 46],
+# [21, 23],
+# [21, 26],
+# [21, 27],
+# [21, 34],
+# [21, 46],
+# [22, 23],
+# [22, 29],
+# [22, 30],
+# [22, 31],
+# [22, 32],
+# [22, 33],
+# [22, 46],
+# [23, 35],
+# [23, 36],
+# [23, 37],
+# [23, 38],
+# [23, 39],
+# [23, 40],
+# [23, 41],
+# [23, 42],
+# [23, 43],
+# [23, 44],
+# [23, 45],
+# [24, 47],
+# [25, 47],
+# [26, 47],
+# [27, 47],
+# [28, 47],
+# [29, 47],
+# [30, 47],
+# [31, 47],
+# [32, 47],
+# [33, 47],
+# [34, 47],
+# [35, 47],
+# [36, 47],
+# [37, 47],
+# [38, 47],
+# [39, 47],
+# [40, 47],
+# [41, 47],
+# [42, 47],
+# [43, 47],
+# [44, 47],
+# [45, 47],
+# [46, 47]
+# ]
+
+import pycosat
+from timeit import default_timer as timer
+
+# x(v, c) <--> vertex v is set to color c
+def x(v, c):
+ return c*N + v
+
+# x(1,0) = 1, x(2,0) = 2, ..., x(n-1, 0) = n-1, x(1,1) = n, ...
+
+cnf = []
+
+# Constraint 1: every vertex gets a color
+for v in range(1, N+1):
+ cnf.append([x(v, c) for c in range(COLORS)])
+
+# Constraint 2: if (u, v) is an edge, then u and v have different colors
+for u, v in EDGES:
+ for c in range(COLORS):
+ cnf.append([-x(u, c), -x(v, c)])
+
+# Constraint 3: every vertex has at most one color
+for v in range(1, N+1):
+ for c1 in range(COLORS):
+ for c2 in range(c1+1, COLORS):
+ cnf.append([-x(v, c1), -x(v, c1)])
+
+# Symmetry breaking -- try solving the second graph for K=5 with and without these constraints!
+cnf.append([x(1, 0)])
+cnf.append([x(2, 1)])
+
+t = timer()
+soln = pycosat.solve(cnf)
+time = timer()-t
+print(soln)
+print(f'{COLORS} colors took {time} sec') \ No newline at end of file