發新話題
打印

算數函數,求函數值

推到噗浪
推到臉書

算數函數,求函數值

f:N->N滿足,m,n為正整數
(1)f(2)=2
(2)f(mn)=f(m)f(n)
(3)m>n,若m>n,f(m)>f(n)
f(2002)=?

TOP

由第二點思考,先因式分解一下 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

TOP

此題出自政大應用數學系申請入學

黃呈明老師的解法如下:

由(2)(3)知  f(x)=x^n  (這裡我不懂)
代入  f(2)=2^n=2  所以 n=1
即f(x)=x
所以f(2002)=2002

TOP

發新話題