由第二點思考,先因式分解一下 2002,
2002 = 2*1001 = 2*7*11*13
所以要想辦法求出 f(2), f(7), f(11), f(13)
由第一及二點可知
f(2*2) = f(2)*f(2)=4
且因為由第三點,可知 f(2)<f(3)<f(4)
故 2 < f(3) < 4
且因為 f(3) 為正整數,可得 f(3)=3
由第二點可知
f(2*3)=f(2)*f(3)=2*3=6
且由第三點,可知 f(4)<f(5)<f(6)
故 4<f(5)<6
且因為 f(5) 為正整數,可得 f(5)=5
由第二點可知
f(2*4)=f(2)*f(4)=2*4=8
且由第三點,可知 f(6)<f(7)<f(8)
故 6<f(7)<8
且因為 f(7) 為正整數,可得 f(7)=7
由第三點可知
f(2*5)=f(2)*f(5)=2*5=10
f(2*6)=f(2)*f(6)=2*6=12
f(2*7)=f(2)*f(7)=2*7=14
且由第三點,可知 f(10)<f(11)<f(12)<f(13)<f(14)
故 10<f(11)<12<f(13)<14
且因為 f(11), f(13) 皆為正整數,可得 f(11)=11, f(13)=13
故,f(2002) = f(2*7*11*13) = f(2)*f(7)*f(11)*f(13) = 2*7*11*13 = 2002
這題目我以前算過,好像是某競賽的題目。上面是我以前第一次看到時的原始作法,
不過看到 thepiano & MathFan 的想法,改寫出如下證明
對任意正整數 k,
必存在正整數 n,使得 2^n > k,
且由題目的第一及二點,可推得
f(1)=1
f(2^n)=2^n
但 1=f(1), f(2), f(3), ..., f(2^n)=2^n 形成一個對應域為正整數的嚴格遞增數列
故 f(m)=m for m=1,2, ... ,2^n
故 f(k)=k
相關討論串:
http://forum.nta.org.tw/examservice/showthread.php?t=35065