-module(prog).
-export([main/0]).
bsearch([], _) -> -1;
bsearch([H|_T], X) when X < H -> -1;
bsearch(List, X) ->
bsearch(List, X, 0, length(List)).
bsearch(_List, _X, First, Last) when Last < First -> -1;
bsearch(List, X, First, Last) ->
Middle = (First + Last) div 2,
Item = lists:
nth(Middle, List), case Item of
X -> Middle;
_Less when X < Item -> bsearch(List, X, First, Middle);
_More -> bsearch(List, X, Middle + 1, Last)
end.
main() ->
L = [5,11,40,64,115,408,503,899,3430,3604,11212,55000],
I = bsearch(L,115),
true.
LW1vZHVsZShwcm9nKS4KLWV4cG9ydChbbWFpbi8wXSkuCgoKYnNlYXJjaChbXSwgXykgLT4gLTE7CmJzZWFyY2goW0h8X1RdLCBYKSB3aGVuIFggPCBIIC0+IC0xOwpic2VhcmNoKExpc3QsIFgpIC0+IAogIGJzZWFyY2goTGlzdCwgWCwgMCwgbGVuZ3RoKExpc3QpKS4KCmJzZWFyY2goX0xpc3QsIF9YLCBGaXJzdCwgTGFzdCkgd2hlbiBMYXN0IDwgRmlyc3QgLT4gLTE7CmJzZWFyY2goTGlzdCwgWCwgRmlyc3QsIExhc3QpIC0+IAogIE1pZGRsZSA9IChGaXJzdCArIExhc3QpIGRpdiAyLAogIEl0ZW0gPSBsaXN0czpudGgoTWlkZGxlLCBMaXN0KSwKICBjYXNlIEl0ZW0gb2YKICAgIFggLT4gTWlkZGxlOwogICAgX0xlc3Mgd2hlbiBYIDwgSXRlbSAtPiBic2VhcmNoKExpc3QsIFgsIEZpcnN0LCBNaWRkbGUpOwogICAgX01vcmUgLT4gYnNlYXJjaChMaXN0LCBYLCBNaWRkbGUgKyAxLCBMYXN0KQogIGVuZC4KCm1haW4oKSAtPgogICAgTCA9IFs1LDExLDQwLDY0LDExNSw0MDgsNTAzLDg5OSwzNDMwLDM2MDQsMTEyMTIsNTUwMDBdLAogICAgSSA9IGJzZWFyY2goTCwxMTUpLAogICAgZXJsYW5nOmRpc3BsYXkoSSksCgl0cnVlLg==