From 1a3d489be846d98c2330bdcb5dd57a2d46d6e528 Mon Sep 17 00:00:00 2001 From: Alpha Chen Date: Wed, 8 Dec 2021 21:32:21 -0800 Subject: [PATCH] [2021][ruby][8.2] clean up minizinc solver --- 2021/ruby/day_08.mzn | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/2021/ruby/day_08.mzn b/2021/ruby/day_08.mzn index e9ce265..865b247 100644 --- a/2021/ruby/day_08.mzn +++ b/2021/ruby/day_08.mzn @@ -14,7 +14,7 @@ set of Signals: Eight = { A, B, C, D, E, F, G }; set of Signals: Nine = { A, B, C, D, F, G }; array[1..10] of set of Signals: AllSignals = [ Zero, One, Two, Three, Four, Five, Six, Seven, Eight, Nine ]; -array[int] of set of Signals: Patterns; +array[1..10] of set of Signals: Patterns; % Patterns = [ % { A, C, E, D, G, F, B }, % { C, D, F, B, E }, @@ -31,10 +31,8 @@ array[int] of set of Signals: Patterns; array [Signals] of var Signals: Map; constraint alldifferent(Map); -constraint forall(pattern in Patterns)( - exists(digit in AllSignals)( - { Map[x] | x in pattern } = digit - ) +constraint forall(pattern in [ { Map[x] | x in pattern } | pattern in Patterns])( + exists(digit in AllSignals)(pattern = digit) ); output [show(Map)]; \ No newline at end of file