%I #33 Oct 08 2017 12:33:38
%S 0,1,1,1,2,2,2,3,3,3,4,4,5,5,5,6,6,6,7,7,8,8,8,9,9,9,10,10,10,11,11,
%T 12,12,12,13,13,13,14,14,15,15,15,16,16,16,17,17,17,18,18,19,19,19,20,
%U 20,20,21,21,22,22,22,23,23,23,24,24,24,25,25,26,26,26,27,27,27
%N Number of daughters to wait before picking in sultan's dowry problem with n daughters.
%C The correct rule can be found in the Gardner reference (p. 60) and in the Wikipedia article (see link): if the number of candidates is n, then the optimal r (the number of candidates to skip) is the r that maximizes (r/n)(1/r+1/(r+1)+...+1/(n-1)). - Zvi Mendlowitz (zvi113(AT)zahav.net.il), Jul 12 2007
%D M. Gardner, My Best Mathematical and Logic Puzzles, Dover, 1994
%H R. J. Mathar, <a href="/A054404/b054404.txt">Table of n, a(n) for n = 1..1000</a>
%H Eric Weisstein's World of Mathematics, <a href="http://mathworld.wolfram.com/SultansDowryProblem.html">Sultan's Dowry Problem.</a>
%H Wikipedia, <a href="http://en.wikipedia.org/wiki/Secretary_problem">Secretary problem</a>.
%F a(n) = the integer r that maximizes (r/n)(1/r+1/(r+1)+...+1/(n-1)). - Zvi Mendlowitz (zvi113(AT)zahav.net.il), Jul 12 2007
%p A054404 := proc(n)
%p local r ;
%p r := 0 ;
%p sr := 0 ;
%p for s from 1 to n do
%p p := s/n*add(1/i,i=s..n-1) ;
%p if p > sr then
%p r := s ;
%p sr := p ;
%p end if;
%p end do;
%p return r;
%p end proc: # _R. J. Mathar_, Jun 09 2013
%t a[n_] := r /. Last[ Maximize[ {(r/n)*Sum[1/k, {k, r, n - 1}], 0 <= r < n/2}, r, Integers]]; a[1] = 0; a[2] = 1; Table[a[n], {n, 1, 75}] (* _Jean-François Alcover_, Dec 13 2011, after Zvi Mendlowitz *)
%t (* The code above may not work in Mma 8 *)
%t PR[n_, r_] := (r/n)*Sum[1/k, {k, r, n - 1}];
%t maxi[li_] := {Do[If[li[[n + 1]] <
%t li[[n]], aux = n; Break[]], {n, 1, Length[li] - 1}], aux}[[2]];
%t SEQ[1] = 0; SEQ[2] = 1; SEQ[n_] := maxi[Table[PR[n, i], {i, 1, n - 1}]];
%t Table[SEQ[n], {n, 1, 133}] (* _José María Grau Ribas_, May 11 2013 *)
%t a[1]=0; a[2]=1; a[n_] := Block[{r}, r /. Last@ Maximize[{(r/n) * (PolyGamma[0, n] - PolyGamma[0, r]), 1 <= r < n/2}, r, Integers]]; Array[a, 75] (* _Giovanni Resta_, May 11 2013 *)
%K nonn
%O 1,5
%A _Eric W. Weisstein_
%E Corrected by Zvi Mendlowitz (zvi113(AT)zahav.net.il), Jul 12 2007