%I #41 Jun 18 2022 17:41:09
%S 1,2,1,4,4,2,6,8,7,4,3,8,12,6,7,16,16,14,18,4,19,8,22,8,33,12,7,40,11,
%T 26,23,32,8,16,6,32,5,18,37,24,40,38,42,8,7,22,10,32,61,84,38,12,35,
%U 32,46,40,32,28,24,44,17,30,61,64,66,8,66,16,67,6,11,32
%N a(n) is the least k such that n divides 2^k + k.
%C For every positive integer n, there exists an integer k such that 2^k + k is divisible by n. The proof is given in the link, p. 63.
%H Chai Wah Wu, <a href="/A247248/b247248.txt">Table of n, a(n) for n = 1..10000</a>
%H International Mathematical Olympiad, <a href="http://www.imo-official.org/problems/IMO2006SL.pdf">Problem N7</a>, IMO-2006, p. 63.
%e a(7) = 6 because 2^6 + 6 = 70 is divisible by 7.
%p f:= proc(n) local k;
%p for k from 1 do
%p if 2^k + k mod n = 0 then return k fi
%p od
%p end proc:
%p seq(f(n), n=1..100); # _Robert Israel_, Dec 01 2014
%t Table[s=0; k=0; While[k++; s=Mod[2^k+k, n]; s>0]; k, {n, 50}]
%t lk[n_]:=Module[{k=1},While[Mod[2^k+k,n]!=0,k++];k]; Array[lk,120] (* _Harvey P. Dale_, Jun 18 2022 *)
%o (Python)
%o def A247248(n):
%o ....if n == 1:
%o ........return 1
%o ....else:
%o ........x, k, kr = 1,0,0
%o ........while (x+kr) % n:
%o ............x, kr = (2*x) % n, (kr+1) % n
%o ............k += 1
%o ........return k
%o # _Chai Wah Wu_, Dec 03 2014
%o (PARI) a(n) = for(m=1, oo, if(Mod(2, n)^m==-m, return(m))); \\ _Jinyuan Wang_, Mar 15 2020
%Y Cf. A135366, A006127 (2^n+n).
%K nonn
%O 1,2
%A _Michel Lagneau_, Dec 01 2014