43 using namespace Int::LDSB;
50 for (
int i = 0 ;
i < x.
size() ;
i++)
56 for (
int i = 0 ;
i < x.
size() ;
i++)
62 namespace Gecode {
namespace Int {
namespace LDSB {
65 return x.exclude(home,
v);
69 namespace Gecode {
namespace Set {
namespace LDSB {
90 int* indices = home.
alloc<
int>(
n);
91 for (
int i = 0 ;
i <
n ;
i++) {
92 VariableMap::const_iterator index = variableMap.find(varref->
xs[
i]);
93 if (index == variableMap.end())
96 indices[
i] = index->second;
102 int *vs = home.
alloc<
int>(
n);
111 int n = varseqref->
nxs;
112 int* indices = home.
alloc<
int>(
n);
113 for (
int i = 0 ;
i <
n ;
i++) {
114 VariableMap::const_iterator index =
115 variableMap.find(varseqref->
xs[
i]);
116 if (index == variableMap.end())
119 indices[
i] = index->second;
126 int *vs = home.
alloc<
int>(
n);
127 for (
unsigned int i = 0 ;
i <
n ;
i++)
139 using namespace Set::LDSB;
157 for (
int i = 0 ;
i < x.
size() ;
i++)
158 variableMap[x[
i].varimp()] =
i;
165 for (
int i = 0 ;
i <
n ;
i++) {
180 vars.
a.expand(home,x);
184 vars.
b.expand(home,x);
188 vars.
c.expand(home,x);
192 vars.
d.expand(home,x);
194 return branch(home,x,vars.
a,vals,syms,bf,vvp);
199 for (
int i = 0 ;
i < x.
size() ;
i++)
200 variableMap[x[
i].varimp()] =
i;
207 for (
int i = 0 ;
i <
n ;
i++) {
218 LDSBSetBrancher<SetView,2,int,2>::post(home,xv,vs,vsc,array,n,bf,vvp);
225 LDSBSetBrancher<SetView,3,int,2>::post(home,xv,vs,vsc,array,n,bf,vvp);
232 LDSBSetBrancher<SetView,4,int,2>::post(home,xv,vs,vsc,array,n,bf,vvp);