:- prompt(_, '').
:- use_module(library(readutil)).
main:-
process,
positions(X, L, R) :- positions(X, L, R, 1).
positions(_, [], [], _).
positions(X, [X|T], [I|R], I) :- plus(I, 1, N), positions(X, T, R, N).
positions(X, [Y|T], R, I) :- X \= Y, plus(I, 1, N), positions(X, T, R, N).
process:-
positions
(3, [0,1,2,3,4,3,2,3,4,5,6,3,2,1], R
), write(R
), nl,
:- main.
Oi0gc2V0X3Byb2xvZ19mbGFnKHZlcmJvc2Usc2lsZW50KS4KOi0gcHJvbXB0KF8sICcnKS4KOi0gdXNlX21vZHVsZShsaWJyYXJ5KHJlYWR1dGlsKSkuCgptYWluOi0KCXByb2Nlc3MsCgloYWx0LgoKcG9zaXRpb25zKFgsIEwsIFIpIDotIHBvc2l0aW9ucyhYLCBMLCBSLCAxKS4KCnBvc2l0aW9ucyhfLCBbXSwgW10sIF8pLgpwb3NpdGlvbnMoWCwgW1h8VF0sIFtJfFJdLCBJKSA6LSBwbHVzKEksIDEsIE4pLCBwb3NpdGlvbnMoWCwgVCwgUiwgTikuCnBvc2l0aW9ucyhYLCBbWXxUXSwgUiwgSSkgOi0gWCBcPSBZLCBwbHVzKEksIDEsIE4pLCBwb3NpdGlvbnMoWCwgVCwgUiwgTikuCgoKcHJvY2VzczotCglwb3NpdGlvbnMoMywgWzAsMSwyLDMsNCwzLDIsMyw0LDUsNiwzLDIsMV0sIFIpLCB3cml0ZShSKSwgbmwsCgl0cnVlLgoKOi0gbWFpbi4=