this repo has no description
at develop 549 B view raw
1include "inverse.mzn"; 2 3int: n; 4 5% Secuencia de números. 6array[1..n] of var 1..n: x; 7 8% Secuencia de diferencias. 9array[1..n-1] of var 1..n-1: u; 10 11constraint forall(i in 1..n-1)(u[i] = abs(x[i+1] - x[i])); 12 13% Posición de cada número. 14array[1..n] of var 1..n: y; 15 16% Posición de la diferencia i. 17array[1..n-1] of var 1..n-1: v; 18 19constraint inverse(x,y); 20constraint inverse(u,v); 21 22constraint abs(y[1] - y[n]) = 1 /\ v[n-1] = min(y[1], y[n]); 23 24solve :: int_search(y, first_fail, indomain_min, complete) 25 satisfy; 26 27output ["x = ",show(x),"\n"];