Znn3bq.jpeg
ÉÇÍ·´óѧº£Ñó¿ÆÑ§½ÓÊܵ÷¼Á
²é¿´: 219  |  »Ø¸´: 0
µ±Ç°Ö÷ÌâÒѾ­´æµµ¡£

beast_me

гæ (³õÈëÎÄ̳)

[½»Á÷] Ò»µÀgoogleÃæÊÔÌâ¡¡n=f(n) ÎÒËã³öµÄ×î´óֵΪ1111111110

ÓÐÒ»¸öÕûÊýn,дһ¸öº¯Êýf(n),·µ»Ø0µ½nÖ®¼ä³öÏÖµÄ"1"µÄ¸öÊý¡£±ÈÈçf(13)=6,ÏÖÔÚf(1)=1,ÎÊÏÂÒ»¸ö×î´óµÄf(n)=nµÄnÊÇʲô£¿

Ô­ÌâµÄÒâ˼ºÃÏñÊÇÕâÑùµÄ£¬Ç°¼¸ÌìÊÇÔÚÎÒÃÇÐ£Ô°ÍøÉÏ·¢ÏÖÕâ¸öÎÊÌâµÄ£¬·¢ÌûµÄÈË˵ÈÃд³ö¼ÆËã»úÔÚ5·ÖÖÓÄڵõ½µÄ×î´óÖµ£¬±¾È˾­¹ýÒ»¶Îʱ¼ä˼¿¼£¬Ð´³öÒ»¸öËã·¨£¬ÔÚ10ÃëÖ®Äڵõ½ÁËÒ»¸ö×î´óÖµ£¬²¢ÇÒÖ¤Ã÷Õâ¾ÍÊÇ  n=f(n) µÄ×î´óÖµ£¡
ÏÖÔÚ°Ñ×Ô¼ºµÄÏë·¨ÄóöÀ´£¬¹©´ó¼ÒÌÖÂÛ£¡
±¾È˵óöµÄ×î´óÖµÊÇ£ºn=1111111110.000000
»ù±¾Ë¼Â·ÊÇ£º
1£ºÏȵõ½n=f(n)ÖÐn×î´óÖµ´æÔڵĴó·¶Î§£¨int CompareFun()×öµÄ¹¤×÷£©
¡¡¡¡Ô­Àí£º
¡¡¡¡É裺FunctionNum(Num)Ϊ³¤¶ÈΪ1µ½³¤¶ÈNumµÄ×î´óÊýÖ®¼äËùÓÐÊýÖÐ1µÄ×ܸöÊý£¨Àý£ºNum=3ÔòNUM(3)Ϊ1µ½999ÖеÄ1µÄ×ÜÊý£©
¡¡¡¡¡¡¡¡FunctionMax(Num)ΪNum¸ö9,ÈçFuntionMax(3)=999£¬¼´¹«Ê½FunctionMax(Num)=10^Num-1£»
      ÔòÓÉÌâÒâÖª£ºFunctionNum(1)=1; (1)
      FunctionNum(Num)=10^(Num-1)+10*FunctionNum(Num-1); (2)
      ÓÉ(1)(2)µÃ£ºFunctionNum(Num)=Num*10^(Num-1);
¡¡¡¡ÏÖÔÚ¾ÍÊÇÒª¿´¿´FunctionMax(Num)=10^Num-1;
¡¡¡¡ÓëFunctionNum(Num)=len*10^(Num-1);
¡¡¡¡ÔÚNumÊôÓÚ×ÔÈ»ÊýÇÒÇ÷ÓÚÎÞÇîʱÓÐûÓн»µãÁË;
¡¡¡¡ºÜÃ÷ÏÔFunctionNum(Num)Ôö³¤µÄ¿ì£¬ÇÒFunctionMax(1)>FunctionNum(1);
¡¡¡¡ËùÒÔFunctionNum(Num)ÓëFunctionMax(Num)ÔÚʵÊý·¶Î§µ±Num>1ʱһ¶¨Óн»µã£»
      
      ÓÉ¡¡int CompareFun();¡¡¼ÆËã³ö´ËÊý´æÔڵķ¶Î§Îª999999999.000000µ½¡¡¡¡¡¡9999999999.000000

2£º´Ó999999999.000000£«1¿ªÊ¼¡¡¼ÆËã´ËÊý´æÔÚµÄС·¶Î§£¨¡¡³ÌÐò°ÑÕâ¸ö·¶Î§ËõСµ½ÁË2000ÒÔÄÚ£¬ÊÇΪÁË˵Ã÷ÎÊÌâ·½±ã£¬Æäʵ·¶Î§¿ÉÁËÔÙСµ½Á½Î»ÊýÉõÖÁ¸öλÊý£©
¡¡¡¡Ô­Àí£º
¡¡¡¡ÒòΪµ±n ÔÚ×î¸ßλÊÇ1µ½2Ö®¼äʱºòf(n)ÊÇÔö³¤Ïà¶Ô×î¿ìµÄ£¬È磺10£­£­20,100000£­200000µÈ£»
¡¡¡¡ËùÒÔ×î¿ÉÄܳöÏÖÔÚÕâ¸ö·¶Î§Ö®ÄÚ£¬Òò´ËÓÃÒÔÏ´úÂë¼ÓÒÔɸѡ£º
¡¡¡¡double n=FunctionMax(CopmareFun()-1)+1;
        double ncopy=n;
        int len=GetNumLen(n)-2;
        int i=1;

        while(len>2)
        {
                if( (n-f(n)) >=1000 )
                {
                    n=n+Get10Square(len--);
                    ncopy=n;
                }
            else
                {
                    n=ncopy;
                }
        }

    double k=n+1001.0;
3£º×îºóÓá¡double f(double Num);¡¡Ò»¸öÒ»¸öÅжϡ¡½á¹û´æÔÚxx.txtºÍyy.txtÖ®ÖС£


¹ØÓÚf()º¯ÊýµÄ¼¸µã˵Ã÷£º
¡¡¡¡ÈÎÒâÊý¼ÆËãÆäÖÐ1µÄ¸öÊý
¡¡¡¡1.´ÓÕâ¸öÊýNum×î¸ßλËãÆð£¬ÏÈËã³öÕâ¸öÊýÒ»¹²¶àÉÙλbitnum
¡¡¡¡2.Èç¹ûÕâ¸öÊýÖ»ÓÐһ룬ÇÒ²»Îª0£¬×ÜÊý¼Ó1,to end;Õâ¸öÊýΪ0£¬Ôò²»¼Ó£¬to end
      3.Èç¹ûÕâ¸öÊýµÄλÊýbitnum²»Îª1£¬¼ÆËãS=S+FunctionNum(bitnum-1)*head; ÆäÖÐheadΪÕâ¸öÊýµÄ×î¸ßλ
¡¡¡¡4.Èç¹û×î¸ßλΪ1£¬Ôò¼ÆËãS=S+DropHead(Num)+1£»DropHead(Num)ΪÕâ¸öÊýNumÈ¥µô×î¸ßλÓàϵIJ¿·Ö
¡¡¡¡5.·ñÔò¼ÆËãS=S+Get10Square(bitnum-1)£»ÆäÖÐGet10Square(bitnum-1)Ϊ10£Þ(bitnum-1)
     6.È¥µôÕâ¸öÊýµÄ×î¸ß룬·µ»Ø1¡£
     7.end



¹ØÓÚn=1111111110.000000¡¡ÊÇn=f(n)µÄ×î´óÖµµÄÖ¤Ã÷£º

¡¡¡¡ÒòΪµ±n ÔÚ×î¸ßλÊÇ1µ½2Ö®¼äʱºòf(n)ÊÇÔö³¤×î¿ìµÄ£¬È磺10£­20,100000£­200000µÈ£»
¡¡¡¡µ±n=999..999ʱf(n)´ïµ½n ½øÎ»(n=100..00)֮ǰ´ïµ½×î´ó£»

¡¡¡¡Ö¤Ã÷¹ý³Ì£º
¡¡¡¡ÒòΪ£ºf(9999999999.0)=10000000000.0;
¡¡¡¡ËùÒÔ£ºf(10000000000.0)=10000000001.0;
¡¡¡¡Öª:ÔÚ n=10000000000.0µ½19999999999.0ÖС¡f(n)ºã>n
¡¡¡¡ÇÒ¡¡f(19999999999.0)(ÒѾ­)Ô¶Ô¶ > 19999999999.0;           (0)

¡¡¡¡ÓÖÒòΪ£ºf(9999999999.0)>9999999999.0;                       (1)

¡¡¡¡ËùÒÔÔÚ¡¡20000000000.0µ½29999999999.0
¡¡¡¡¡¡¡¡¡¡¡¡30000000000.0µ½39999999999.0
¡¡¡¡¡¡¡¡¡¡¡¡.......
¡¡¡¡¡¡¡¡¡¡¡¡90000000000.0µ½99999999999.0
¡¡¡¡µÈµÈµÄÕâ¸÷9999999999.0+1¸öÊýÖ®¼ä
¡¡¡¡¶¼»á³öÏÖ f(29999999999.0)-f(20000000000.0)=f(9999999999.0);  (2)
           ¡¡¡¡¡¡29999999999.0-20000000000.0=9999999999.0;         (3)
¡¡¡¡ÓÉ(0)(1)(2)(3)µÃ:
        ¡¡¡¡¡¡¡¡¡¡ f(29999999999.0)Ô¶Ô¶ > 29999999999.0
¡¡¡¡¡¡Í¬Àí¿ÉÖ¤ f(39999999999.0)Ô¶Ô¶ > 39999999999.0
¡¡¡¡¡¡¡¡ ¡¡¡¡¡¡f(49999999999.0)Ô¶Ô¶ > 49999999999.0
         ¡¡¡¡¡¡¡¡¡¡¡¡....
       ¡¡¡¡¡¡¡¡¡¡  f(99999999999.0)Ô¶Ô¶ > 99999999999.0
¡¡¡¡¡¡µ±99999999999.0±ä³É99999999999.0+1=10000000000.0ʱ¡¡
  ¡¡¡¡ÔÚf(10000000000.0)¡¡µ±È»ÈÔÔ¶Ô¶¡¡> 10000000000.0
¡¡¡¡¡¡¡¡È»ºón ÔÚ¡¡10000000000.0¡¡µ½¡¡20000000000.0¡¡Ö®¼äʱ
¡¡¡¡¡¡f(n)»á³¤µÄ¸ü¿ì
¡¡¡¡ÒÀЩÀàÍÆ£¬¿ÉÖª n>¡¡1111111110.00000 ºó
¡¡¡¡n µÄÔö³¤ËÙ¶ÈԶԶСÓÚf(n)µÄÔö³¤ËÙ¶È£¡
¡¡¡¡Ö¤±Ï£¡


¸½³ÌÐòCÓïÑÔ´úÂ룺

#include "stdio.h"
int GetNumLen(double Num);
double Get10Square(int Num);//10^Num
double FunctionMax(int Num);//10^Num-1
double FunctionNum(int Num);//Num*10^(Num-1)
double DropHead(double Num);
int GetHead(double Num);
int CompareFun();
double f(double Num);

main()
{

    FILE* fp;
                FILE* savefp;
        fp=fopen("xx.txt","w";
        savefp=fopen("yy.txt","w";
        double n=FunctionMax(CopmareFun()-1)+1;
        double ncopy=n;
        int len=GetNumLen(n)-2;
        int i=1;

        while(len>2)
        {
                if( (n-f(n)) >=1000 )
                {
                    n=n+Get10Square(len--);
                    ncopy=n;
                }
            else
                {
                    n=ncopy;
                }
        }

    double k=n+1001.0;
        while(n<=k)
        {
                double fn=f(n);
                printf("%f",n);
                printf("                %f",fn);
                if(n==fn)
                        printf("                   %f",n);
                printf("\n";
                fprintf(fp,"%f",n);
                fprintf(fp,"                %f",fn);
       
                if(n==fn)
                {
                        fprintf(fp,"                   %f",n);
                    fprintf(savefp,"%f\n",n);       
                }
                fprintf(fp,"\n";
                n++;
        }

        printf("game over\n";
        fclose(fp);
        fclose(savefp);

        return true;
       
}
int GetNumLen(double Num)
{
        int len=1;
        while((Num=Num/10)>=1)
        {
                len++;
        }
        return len;
}
double Get10Square(int Num)
{
        double return_value=1;
        for(int i=0;i                 return_value=10.0*return_value;
        return return_value;
}
double FunctionNum(int Num)
{
        return Num*Get10Square(Num-1);
}
double FunctionMax(int Num)
{
        return Get10Square(Num)-1;
}
int CompareFun()
{
        int i=1;
        while(FunctionMax(i)>FunctionNum(i))
                i++;
   
        return i;
}
double DropHead(double Num)
{
        int len=GetNumLen(Num);
        if(len==1)
                return 0;
        else
        {
    double HeadUnit=Get10Square(len-1);
        while(Num>=HeadUnit)
        {
                Num-=HeadUnit;
        }
        return Num;
        }
       
}
int GetHead(double Num)
{
        double HeadUnit=Get10Square(GetNumLen(Num)-1);
        return (int)(Num/HeadUnit);
}
double f(double Num)
{
        double S=0;
        int bitnum;
        bitnum=GetNumLen(Num);
        int interrupt=1;
        while(interrupt)
        {
                if(bitnum==1)
                {
                        if(Num!=0)
                                S++;
                        else
                        {

                        }
                        interrupt=0;
                }
                else
                {
                        int head=GetHead(Num);
                        S=S+FunctionNum(bitnum-1)*head;
                       
                        if(head==1)
                        {
                                S=S+DropHead(Num)+1;
                        }
                        else
                        {
                                S=S+Get10Square(bitnum-1);
                        }
                }
                Num=DropHead(Num);
                bitnum=GetNumLen(Num);
        }

        return S;
}   
  

Áí¸½n=f(n)µÄËùÓÐÖµ(¾ùÓÉ double f(double Num) µÃ³ö)£º
0
1
199981.000000
199982.000000
199983.000000
199984.000000
199985.000000
199986.000000
199987.000000
199988.000000
199989.000000
199990.000000
200000.000000
200001.000000

1599981.000000
1599982.000000
1599983.000000
1599984.000000
1599985.000000
1599986.000000
1599987.000000
1599988.000000
1599989.000000
1599990.000000
2600000.000000
2600001.000000


13199998.000000
35000000.000000
35000001.000000

35199981.000000
35199982.000000
35199983.000000
35199984.000000
35199985.000000
35199986.000000
35199987.000000
35199988.000000
35199989.000000
35199990.000000
35200000.000000
35200001.000000


117463825.000000
500000000.000000
500000001.000000


1111111110.000000



[ Last edited by beast_me on 2006-10-16 at 18:36 ]
»Ø¸´´ËÂ¥

» ²ÂÄãϲ»¶

ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû
Ïà¹Ø°æ¿éÌø×ª ÎÒÒª¶©ÔÄÂ¥Ö÷ beast_me µÄÖ÷Ìâ¸üÐÂ
×î¾ßÈËÆøÈÈÌûÍÆ¼ö [²é¿´È«²¿] ×÷Õß »Ø/¿´ ×îºó·¢±í
[¿¼ÑÐ] 291 Çóµ÷¼Á +32 »¯¹¤2026½ì±ÏÒµÉ 2026-04-09 32/1600 2026-04-13 20:15 by nxybio2007
[˶²©¼ÒÔ°] ÓÐûÓÐѧУ²ÄÁÏרҵÊÕ¿çµ÷(Ò»Ö¾Ô¸085410) +13 momo(Éϰ¶°æ) 2026-04-06 16/800 2026-04-13 15:27 by Xurambo2014
[¿¼ÑÐ] Ò»Ö¾Ô¸211 0703»¯Ñ§ 346·ÖÇóµ÷¼Á +26 ÍÁ¶¹er? 2026-04-09 29/1450 2026-04-13 15:15 by ¶À×íÃι³Ç
[¿¼ÑÐ] µ÷¼ÁÇóÊÕÁô +30 ¹ûÈ»ÓÐÎÒ 2026-04-10 31/1550 2026-04-13 14:18 by ÕÅzhihao
[¿¼ÑÐ] 297¹¤¿Æ£¬Çóµ÷¼Á? +13 ºÓÄÏũҵ´óѧ-ÄÜ 2026-04-12 13/650 2026-04-13 14:12 by dingyanbo1
[¿¼ÑÐ] Ò»Ö¾Ô¸ÏôóÉúÎïѧ332Çóµ÷¼Á +11 ³Ø³Ø³Ø³Ø³Ø³Ø 2026-04-08 11/550 2026-04-13 14:10 by ¿ÆÑÐÂÛ
[¿¼ÑÐ] ¿¼ÑжþÂÖµ÷¼Á +10 ¹ÊÈË?? 2026-04-09 10/500 2026-04-13 09:55 by szhize
[¿¼ÑÐ] 295·ÖÇóµ÷¼Á +13 ?ÒªÉϰ¶? 2026-04-10 13/650 2026-04-12 15:37 by laoshidan
[¿¼ÑÐ] 299Çóµ÷¼Á +8 ZVVZ13 2026-04-08 8/400 2026-04-12 00:40 by À¶ÔÆË¼Óê
[¿¼ÑÐ] 085501»úеר˶ 302·Ö ²»ÌôרҵÇóµ÷¼Á +7 Íôij. 2026-04-09 7/350 2026-04-11 14:37 by luhong1990
[¿¼ÑÐ] 265Çóµ÷¼Á +12 ·ç˵ËýÔçÍüÁË 2026-04-10 13/650 2026-04-10 18:56 by chemisry
[¿¼ÑÐ] ²ÄÁÏרҵ344Çóµ÷¼Á +16 hualkop 2026-04-10 21/1050 2026-04-10 17:28 by laoshidan
[¿¼ÑÐ] 298Çóµ÷¼Á +13 ¶¤¶£ß˶¬¹Ï 2026-04-09 13/650 2026-04-10 15:49 by jiajinhpu
[¿¼ÑÐ] 337Çóµ÷¼Á +4 Gky09300550£¬ 2026-04-09 4/200 2026-04-09 17:18 by ÅÁ¶ûÂíÀ­ÌØ
[¿¼ÑÐ] ¸´ÊÔµ÷¼Á£¬Ò»Ö¾Ô¸Ö£ÖÝ´óѧ²ÄÁÏÓ뻯¹¤289·Ö +31 ˶ÐǸ° 2026-04-08 31/1550 2026-04-09 16:54 by Delta2012
[¿¼ÑÐ] 086004 Çóµ÷¼Á 309 +7 Yin DY 2026-04-08 7/350 2026-04-09 13:59 by Delta2012
[¿¼ÑÐ] ²ÄÁÏ307·ÖÇó´óÀÐ×éÊÕÁô +17 Hllºú 2026-04-07 17/850 2026-04-09 10:53 by liuhuiying09
[¿¼ÑÐ] 334Çóµ÷¼Á +16 Riot2025 2026-04-08 17/850 2026-04-09 09:28 by wdyheheeh
[¿¼ÑÐ] 286Çóµ÷¼Á +19 Faune 2026-04-08 20/1000 2026-04-09 08:36 by ŶŶ123
[¿¼ÑÐ] 11408 325·Ö +3 jgtxuxgkx 2026-04-07 3/150 2026-04-07 23:10 by lbsjt
ÐÅÏ¢Ìáʾ
ÇëÌî´¦ÀíÒâ¼û