[go: up one dir, main page]

login
a(n) is the least k such that n divides 2^k + k.
6

%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