% recup(L,L1,L2). recup([Val|Reste],L1,L2) :- recup(Val,Reste,[Val],L1), append(L1,L2,[Val|Reste]). % recup(Val,Elems,Temp,Sol). recup(Val,[Val|Reste],Temp,Sol) :- recup(Val,Reste,[Val|Temp], Sol). recup(Val,[X|_],Sol,Sol) :- X \= Val. recup(_,[],Sol,Sol).