转跳到内容

520 当然应该来做数学题了(?)


推荐贴

如果一个数的十进制表示中含有 5、2或者0(不含前导 0),则称这个数为"L 数"。

例如 0 ~ 6 中,"L 数"有 3 个,分别为 0 2 5。

在 2147 ~ 2999 中,"L 数"有 853 个。

那么在

1. 0 ~ 10^9

2.10^10^4 ~ 10^(10^4+1)

这两个范围内,"L 数"分别有多少个?

注释
骚男 骚男 20.00节操 昨天和今天都出去玩了pwp 这里是糖w
链接到点评

对于个位数,0 ~ 9 中有 3 个"L 数",即 0、2、5。对于十位数,0 ~ 99 中有 3 个"L 数",每个个位数都会出现 10 次。对于百位数,0 ~ 999 中有 3 个"L 数",每个个位数和十位数都会出现 10 次。

以此类推,对于千位数、万位数等,同样有 3 个"L 数",每个范围都会扩大 10 倍。

因此,在范围 0 ~ 10^9 中,每一位上的数字都会出现 3 次,总共有 10^9 + 1 位数字(包括 0),所以总的"L 数"个数为 3 * (10^9 + 1)。

范围 10^10^4 ~ 10^(10^4+1),同样可以使用类似的方法。每一位上的数字仍然会出现 3 次,而位数的个数为 10^4+1,所以总的"L 数"个数为 3 * (10^4+1)。

 

为什么520在这做题:1151691507_SSB(4):

注释
reflectK reflectK 1.00节操 显然错了www
链接到点评

以Ln表示从0起10^n个数中L数数量,L1(0-9)=3,L2=L1*8+2*10(十位数是2和5的所有数都是所以有2*10个,十位数是其他的的话则有L1*8个),L3=L2*8+2*100,Ln=L(n-1)*8+2*10^(n-1)

可得Ln=3*8^(n-1)+Σ(i=1~n-1)2*10^i*8^(n-1-i),求和部分为等比数列,可得Ln=3*8^(n-1)+(2*10^n/8-20*8^n-2)*4

第一题=L9+1(L9不包括10^9)

第二题=L(10^4+1)-L(10^4)+1

认真的,具体的值懒得算了,这值大部分计算器都溢出了

注释
reflectK reflectK 10.00节操 差不多是正确的www
链接到点评

虽然说平生最整不过的就是数学题了,但是好在我会写程序

z = 0
for i in range(1000000000):
    temp = i
    contains_2_or_5 = False
    while temp > 0:
        if temp % 10 == 2 or temp % 10 == 5:
            contains_2_or_5 = True
            break
        temp = temp // 10
    if contains_2_or_5:
        z += 1
    else:
        while i > 0:
            if i % 10 == 0:
                z += 1
                break
            i = i // 10
print(z)

就是数太大了,到现在还没算出来第一题,第二题就不算了

链接到点评

一位数的非L数有7的1次方个

两位数的非L数有7的平方个

三位数的非L数有7的三次方个

以此类推

N位数的非L数有7的N次方个,思路是总个数-非L数=L数 ,因为非L数比较好算嘛

 

第一个问题,0-10的九次方实际上就是问1位数到8位数之间有多少个非L数(去掉最后一个数)。那就是7的1次方加7的2次方一直加到7的8次方个,设为F,那L数=10的九次方+1-F

 

第二个问题,问10^4-1位数到10^4位数间有多少非L数,分两段,先计算1位数到10^4-1位数间有多少非L数,那就是7的1次方加7的2次方一直加到7的10^4-1次方,设为F1,再计算1位数到10^4位数间有多少非L数,列式;7的1次方一直加到7的10^4次方,设为F2。

F2-F1得出的是10^4-1位数到10^4位数间有多少非L数,设为T。那L数的个数就是就是10^(10^4+1)-10^10^4+1-T。

 

剩下的就是用等比数列的公式去算了。

 

设想就是这么个设想,如果有错的地方还望指正。

链接到点评
  • 1 个月后...

看了一下,似乎还没有正确答案?要注意减去一下重复的部分哦,毕竟不是计算符合条件的digit,而是计算number数量,像是22不能重复计算两次的。

这种题直接按位做就行,首先可以默认长度为k的数字可以有前导0,最后算答案的时候再去掉就好

A_1= 3,这是起始情况

A_2= 10*A_1 + 3*B_1,第一部分就是只要后面含520,前面随便怎样都行,B_1表示那些在第一位是520,后面不含520的情况。或者后面含520,或者不含520,所以这样的分类是充分的。

B_2= 7*B_1,B_i的递推很简单啦.

A_3= 10*A_2 + 3*B_2,依然不变,讨论除了第一位之外有没有520。

那么最后就有了递推式:

A_i = 10*A_(i-1) + 3*B_(i-1)

B_i = 7*B_(i-1)

A_1 = 3

B_1 = 7

可以化简为A_i = 10*A_(i-1) + 3*7^(i-1)

可以用一些线性代数技巧得到解析解A[i] = -7^i + 10^i

最后记得要A_k减去0开头的部分,也就是A_(k-1)+B(k-1),得到的才是真正结果L[i] = -7^i - 10^(-1 + i) + 10^i

特别地,用到L[1]要加上1,也就是0这个数字.

那么第一问就是sum(L[i] , i = 1 to 8) + 1 + 1 = 93274401 ,第一个1是0,第二个1是1e9,(如果默认两边都是闭区间)

第二问就是L[1e4] + 1 = 一个超级大的数字:656393010_SSB(7):

 

8999999999999999999999999999999999999999999999999999999999999999999999\
9999999999999999999999999999999999999999999999999999999999999999999999\
9999999999999999999999999999999999999999999999999999999999999999999999\
9999999999999999999999999999999999999999999999999999999999999999999999\
9999999999999999999999999999999999999999999999999999999999999999999999\
9999999999999999999999999999999999999999999999999999999999999999999999\
9999999999999999999999999999999999999999999999999999999999999999999999\
9999999999999999999999999999999999999999999999999999999999999999999999\
9999999999999999999999999999999999999999999999999999999999999999999999\
9999999999999999999999999999999999999999999999999999999999999999999999\
9999999999999999999999999999999999999999999999999999999999999999999999\
9999999999999999999999999999999999999999999999999999999999999999999999\
9999999999999999999999999999999999999999999999999999999999999999999999\
9999999999999999999999999999999999999999999999999999999999999999999999\
9999999999999999999999999999999999999999999999999999999999999999999999\
9999999999999999999999999999999999999999999999999999999999999999999999\
9999999999999999999999999999999999999999999999999999999999999999999999\
9999999999999999999999999999999999999999999999999999999999999999999999\
9999999999999999999999999999999999999999999999999999999999999999999999\
9999999999999999999999999999999999999999999999999999999999999999999999\
9999999999999999999999999999999999999999999999999999999999999999999999\
9999999999999999999999999999999999999999999999999999999999999999999999\
9999999990441271143255590297227837806622272552284349119916232976719025\
2263117197311015262030648127153084321823696608452967581690559441632938\
2211901039434622121960031879146953446310007612791627164330864962756966\
2303380073360786353863794219219200435341746117464282635883550517938571\
2638012609700106759862793837720150477828863715782017215727258570499609\
5030185301112352392510603268211138479338239293498995346337778938297268\
1871181518576181932208388603150021846614277041634453185751627215402710\
6738436813085551603893450625089605591503924029271072790393622864990070\
6562291104551136047898030147514880997086032766541890302816573823899184\
0850465515881822263402763808928977215554412894030230933226056848147502\
8539213291232987276424528667791681751300477465943045277536288043626088\
1510923451171309470219819714218209799290894783353049926414829529302227\
2507109667922839898105800783568595414111467489608025039294551102834744\
0829759064614870407562933335012556064685689681212290427818052312889539\
6037845857900344766255259416447973069057807190453863176129452775964344\
3831687069611944880641199215482102863333808120225696162059393641170205\
5784007353630821465963750322565058647543993131645530862827897234635736\
4594189655608522144714281689102675631251822296268616709393353803758233\
6777260502105728135054260837796128679498291871257393140060192140086349\
3751509522571590726154677706051404749581866639411693458902874218371571\
8020310322912147380632541984158578388281576636939380553924196839649128\
4145495074177934264584282882357048358482955483873704124314758874573786\
8434601323535708117648039487718266803529651170230948140640274188750744\
5659513734287025491713631723178225548671003106368065565158208789386022\
2623534998300735299392740608070996586279019420662061096714758930549882\
7846984132040245063303845567647960389178315414339706557783667744492941\
9249928429420659915924271473149048918611249612165324721916057271669687\
0288513488684699220211179819159380278776284759821327632503362957727139\
7077549932422669915362687526592693941724405685413124552130590667350193\
7855254309329200845287116896662970616880121026943347077773274953505998\
3556220562565472164661333416671743008844738975181912577286836459168117\
8278326492759874492416836149768484580365016902845265578684684963443261\
4960474201488869396838317149355587674628964098173789206221671569802723\
9677390313327601127710899881738381976902266824039544468091065535843120\
2781653939513082376120651060100579167073213885834563882311492365751865\
6209197162477330017042403283476874621389422754587110899518296827978908\
5358451636152458166920773147422344913914314370242176993028027959674593\
0140556971302278010723762270455871481895712087219700097528091938678972\
8577897445259247289710053193264627406070606575079771853182139614104946\
2720625395309937091376936974034007588386640069453719159379836637057136\
2898343063472497520014101231667815995664033600763561922064625148774136\
2092116700479463680235137260995224959975447796306442172670258024777258\
0895640216394786250057419638987682739069277417025592643423123433465829\
5947567368076783348915605071305881646741054253385065599760145795496823\
1017179865519192466211694477633950879523115906506048951355926548496719\
5307896143334790968913343230978354277405161269060440189537881107770047\
9973981853666597650556005717395399241067633460846606909495992896008811\
3651982586427087364572767247380106815297954332712046749330366638822193\
3789179420751083141802897094441438926826345261472336197235744935433974\
7245988202827590139855164253686016662637125254164818459645665800009321\
8409499613264619879764427585205586419457266729475102634400581349588693\
8858632178064410652343260677569609091780921869980916686816307599283443\
4577287748320371816198191302561528751729103343433198607893954023398905\
8238944989210045863693729409971125497664071828504164090317360269255209\
5435666380230592549019633360163918721517276305804317166718502579404538\
2312217907912696900274814850900106571220641268598730862337429080642862\
6731411629897485560815723687594802931600795171588149781443586411740367\
0417947433062899583353209052850155403001168968326263228910689668846236\
5765142361003746205183172596825408659076439644955674037865278210676644\
5503972332389840885875385083845944236904880167453583811453257158339532\
9472102438094372109009696485809455824843262249413013924754305106023577\
1471643143660921161773277030353695073096095279728739244937882572502964\
7897648167357572715273120311526103231296832390252720433560442150119960\
7280725018940936970795393721045858335970015184851431103203363565733674\
0752545051613638697484801971485029072764053467954795903484513162300153\
3074002801121182184116848244227070988469045094337352722470853695368045\
1281242018157806408410394410630365923092654055165694187974191116083118\
8600226525933895841687545037348703353707574981887361698294270811901442\
4295616025389227248892330200338158225872264672470370012019864504725802\
2482742366426324666823607404613603681871374997374181383958696770672039\
3103892562122709987738038904924921476750259892558350925794292496660142\
3895205944986459974618273309964961705643808189332753064791423379344944\
5288022432684210741702565498714877596654449142635577893910599901902019\
2899399330857458276994578006672361598202002846047895820180267080946231\
4737843665963339152611704803482287180069644602416409311218549566112262\
3444524136053502822015762337652404842311274247887988032094088226786049\
3304402181417330341238511560130027606339972320864755331566385906696501\
6549738168487802668841796482758489842118829203675830283621256573051991\
8907901341190971789839383889091672645543031610729692311561463023304770\
5784503327725114460299740982127326192926969870050874534442783824783199\
0733789885797150871512220201851634782929064625281731788897638019031472\
6690501161052160741817445691496535162020533022456942542128408524133233\
0009063260844482211309456056450156818836386185403475295225850493305941\
7224213687476988899967111742452193444818327872331169687882778795362331\
1365889854294986026148024708624530053390153459729721191669432335683582\
4346835770804361520246340086135135725829873645792436642157615931531593\
7462953974630904091592800817444751850082404094162240509465782077658571\
1539366777355183216087942962929246454428874880819261262687258560585003\
2067894911644732242765262202894256864090231899376919955809456659481559\
1599832075906348260929486332992326006755135981368665464763077838939551\
6257312716727647360327112296333021084590912453267648769480565841975854\
9881831465277587902646054099996624894811209711642818907833224552938324\
6722010566546065885051520496627671847829870819682986641879384272024820\
9627836937458096858879736643739921436118971171841955677433209654755711\
0673810354766404255161129570758908072394851134244382751456539747187362\
8522661661268727304752128785146865579141195780375230470469150351756945\
3883451665594793029403043758309504040717631169514229330266665324400211\
1524971397162964757856733577440916498418325554123650966691443685598763\
4356945805842338966805690014895911470424245971746519317277152137025678\
3255311221979038300840719336117153765310689922918263397563583316179345\
6478712383374605088558499875983133975188795292213707471038839671841066\
7146914132816741174524464108326574647640473646692988982897978154377036\
0733310703277344109067384861471052486189104765727224356599983008537233\
5317437456572632194262615378092393493915043379860061344779425727067919\
7166024919502327636839521805869442348916247774481260187706742402979678\
1478841276789576491015096789977468318528395838472716574981334628961210\
1256491758714468668161025210359044878678906237625444760789293481782587\
1211691014768961825818162753314168884655786032839086887728432258675195\
3795309206068613277902458167940423217540230987785444275337117383344074\
7355465706821736304204532891122404045723118731908838773400568031315879\
4433687235095622394109997758909778897432394977924933363118137125754887\
5592558220536409032520853960011195030792817634634153287912195773336703\
0263578192143144156836743183832874233258014991515626232729518903989476\
0546652280432799932858038664127873755996293910597578857660450742337841\
6002032830722672308964176476561730633065226179100012020220007131559364\
9523438240043297872525576125724705590226186625416474541863111494364603\
8069702313144915812854035227477692844114067932042051239791543949195299\
0131634805030112241725509384204273402142272750582783622421537344295125\
7105995233143447331202637904985432847325822106188267260037552177137405\
6644670720633060249766905681916975071049126864788988088754537816877586\
982867768827847899482698075941150804198687450786487194000000

,由yasuchtalu修改
链接到点评
于 2023/5/21 于 PM7点46分,橙子火树说道:

一位数的非L数有7的1次方个

两位数的非L数有7的平方个

三位数的非L数有7的三次方个

以此类推

N位数的非L数有7的N次方个,思路是总个数-非L数=L数 ,因为非L数比较好算嘛

 

第一个问题,0-10的九次方实际上就是问1位数到8位数之间有多少个非L数(去掉最后一个数)。那就是7的1次方加7的2次方一直加到7的8次方个,设为F,那L数=10的九次方+1-F

 

第二个问题,问10^4-1位数到10^4位数间有多少非L数,分两段,先计算1位数到10^4-1位数间有多少非L数,那就是7的1次方加7的2次方一直加到7的10^4-1次方,设为F1,再计算1位数到10^4位数间有多少非L数,列式;7的1次方一直加到7的10^4次方,设为F2。

F2-F1得出的是10^4-1位数到10^4位数间有多少非L数,设为T。那L数的个数就是就是10^(10^4+1)-10^10^4+1-T。

 

剩下的就是用等比数列的公式去算了。

 

设想就是这么个设想,如果有错的地方还望指正。

我绕来绕去算完了,才发现实际上就是这个简单的结果wwwww

链接到点评
×
×
  • 新建...

重要消息

为使您更好地使用该站点,请仔细阅读以下内容: 使用条款