Keep on moving

あんまりまとまってないことを書きますよ

ちょっとした問題。Listから要素を検索して残りの要素数を返す。どう書く?

id:yuroyoroさんのブログで面白そうなお題のエントリがあったので腕試しがてらErlangで解いてみました。
ちょっとした問題。Listから要素を検索して残りの要素数を返す。どう書く? - ( ꒪⌓꒪) ゆるよろ日記

-module(mylists).
-export([remainsLength/2]).
-include_lib("eunit/include/eunit.hrl").

remainsLength_test_() ->  
    List = ["World", "is", "not", "enough"],
    [
     ?_assert(remainsLength(List, "is") =:= 2),
     ?_assert(remainsLength(List, "foo") =:= -1),
     ?_assert(remainsLength(List, "enough") =:= 0)
    ].  

remainsLength([],_Searched) ->
    -1;
remainsLength([X|Xs],Searched) when Searched =:= X  ->
    length(Xs);
remainsLength([_X|Xs],Searched)  ->
    remainsLength(Xs,Searched).

元ネタ

Blog not found