最近笔者在备战蓝桥杯时发现C++大学C组的题解没有完整的,一搜还是大片的大学B组,打完后,笔者打算自己出一篇题解个人思路。由于笔者是个蒟蒻,加之想蹭一波蓝桥杯的热度,在比赛完当天就赶出来这篇文章,所以肯定会有错误的,这篇文章也会持续更新到思路和代码全部正确为止,顺带一提,笔者暂时还没有学会用非常美观的LaTeX公式,后续学会了会重构一下这篇文章的,大佬轻喷。
另外欢迎各位大佬指出错误。
一、个人思路+代码
A.拼正方形
题目原文:
题意解析:
有7385137888721个2*2的正方形和10470245个1*1的正方形,问能拼出的最大正方形的边长。
个人思路:
都给面积了,为什么不把总面积算出来然后开二次根呢?
先把2*2的正方形数量乘以4得到2*2正方形的总面积,再加上1*1正方形的面积可以得出能拼出的总面积,再开二次根得到结果。
个人代码答案:5435123
B.劲舞团
题目原文:
log.txt内容(网页端的话不要随意打开,2000行呢,得划好久,app端是全部打开的可以点右下角的目录跳转下一题,再向上划一点来看思路之类的):
h h 1709446139591r v 1709446140286j m 1709446140346q a 1709446141746f j 1709446142395a a 1709446143361o o 1709446143846k n 1709446143890b b 1709446144140d w 1709446145280d d 1709446146147k m 1709446146307l l 1709446146414x x 1709446147055l i 1709446148307w w 1709446148567j j 1709446148973v v 1709446150215z f 1709446151637b p 1709446152316w p 1709446152444l t 1709446152512x x 1709446153577q q 1709446153816x q 1709446155011g g 1709446155765j q 1709446156799w y 1709446157600b m 1709446158100r p 1709446159476r z 1709446160064c c 1709446160867q q 1709446161134y b 1709446162525h w 1709446162613h l 1709446163098o o 1709446163570y t 1709446164011g k 1709446164332y y 1709446165404t t 1709446165641r r 1709446165740o o 1709446166696a c 1709446167026w w 1709446167589f z 1709446168046p p 1709446169051g g 1709446169103c i 1709446169863o o 1709446170135j j 1709446171441t b 1709446171668w o 1709446171975e e 1709446172063v l 1709446173504y y 1709446174160h h 1709446174421a a 1709446175358g g 1709446176638a a 1709446176976j j 1709446177112l l 1709446177731e s 1709446178431r r 1709446178625w w 1709446179098k k 1709446179977h h 1709446181411r r 1709446182401w w 1709446183666a w 1709446184514z z 1709446185785q x 1709446187274k k 1709446188327d d 1709446188743e s 1709446190199f f 1709446190615s s 1709446191296l o 1709446192034r w 1709446192449c c 1709446192896y c 1709446193808h h 1709446195047s s 1709446195448v v 1709446195918g g 1709446196344s e 1709446196803f f 1709446197586t t 1709446197914c c 1709446198482j r 1709446199066o o 1709446199427h p 1709446200156o y 1709446201262p e 1709446202002b b 1709446203132s k 1709446203479n n 1709446203766i i 1709446204089z z 1709446204586k k 1709446205632e z 1709446205840b i 1709446205850c d 1709446206103k k 1709446206849c c 1709446208074e n 1709446209533s l 1709446210733i i 1709446212173a e 1709446213575y q 1709446214434w w 1709446215796z r 1709446216336d t 1709446216463h h 1709446216989m e 1709446217212b b 1709446217883t t 1709446218826u i 1709446219325q q 1709446220702z z 1709446221917h h 1709446222510g g 1709446223190h h 1709446224145l l 1709446224758d f 1709446225011i w 1709446225954u u 1709446226829p p 1709446228312s k 1709446229012e e 1709446229852p p 1709446230133p p 1709446230779n n 1709446230839e t 1709446231979i i 1709446233124m m 1709446233297i t 1709446234269l q 1709446235604p p 1709446236154a x 1709446237148r r 1709446238180z i 1709446238638p m 1709446239678s i 1709446240785x k 1709446241994u c 1709446243318p p 1709446243613s d 1709446244280o k 1709446244957i g 1709446245241q q 1709446245902y y 1709446246752g f 1709446247893g g 1709446249345a a 1709446249502s s 1709446249775c c 1709446250224w w 1709446250693d d 1709446251516g l 1709446252448m m 1709446253209w w 1709446253326s s 1709446254354i i 1709446255631s o 1709446255701v d 1709446256951a k 1709446258080b p 1709446258595k k 1709446259494m m 1709446260202r v 1709446260918e z 1709446261458g s 1709446262859y j 1709446263114e e 1709446263262s r 1709446264429w w 1709446264605x x 1709446264709v g 1709446265340x x 1709446266389e e 1709446266496i i 1709446267562y y 1709446269005p b 1709446270107g g 1709446270911s s 1709446272059d b 1709446272361u q 1709446272472l l 1709446272698n n 1709446273113o m 1709446273367a a 1709446273631g g 1709446274758s s 1709446274795k k 1709446275321j j 1709446275860p p 1709446275901l v 1709446276832t t 1709446277761h h 1709446278165k k 1709446279500w w 1709446280321w w 1709446280388g g 1709446281700h h 1709446283111y y 1709446283866s d 1709446283906f f 1709446284712h h 1709446284959c c 1709446285816n c 1709446286947e e 1709446287524n n 1709446287709h h 1709446288797j p 1709446289061h h 1709446289447b b 1709446290622i i 1709446290741o d 1709446291584k k 1709446292136c c 1709446292555j j 1709446293067z z 1709446294090g g 1709446295520s j 1709446296682c c 1709446297729k l 1709446298105f f 1709446298555a a 1709446299405j j 1709446299951k a 1709446300711x w 1709446301061e l 1709446301426b b 1709446302480k r 1709446302963p y 1709446302987c c 1709446303500p p 1709446304395r r 1709446304976c c 1709446306191y p 1709446306468n n 1709446307944g g 1709446309205m d 1709446309364v v 1709446310516g k 1709446311420s s 1709446311694n n 1709446311998x x 1709446312612i i 1709446313601o l 1709446314524w g 1709446315967c c 1709446316649t t 1709446318114p i 1709446319049g g 1709446320533h b 1709446322004v v 1709446323010h e 1709446323985u q 1709446324017k k 1709446324307t r 1709446324628r r 1709446325148c c 1709446325973o r 1709446326231p k 1709446326818i i 1709446327642a a 1709446328092o o 1709446328499x x 1709446329759i i 1709446331256m m 1709446332321l l 1709446332415p n 1709446332626x x 1709446333544z z 1709446334219y u 1709446335524f u 1709446335936w w 1709446336167n n 1709446336731t t 1709446336785c c 1709446338141p p 1709446339572u w 1709446339956x x 1709446340671w w 1709446341783y x 1709446342435n n 1709446342958i i 1709446344202k a 1709446344884k t 1709446345989c l 1709446347238r r 1709446347315y y 1709446348493r l 1709446348705a t 1709446350038x b 1709446351238x f 1709446352495t t 1709446352657p p 1709446353197l l 1709446353464a a 1709446353790t u 1709446354706m m 1709446355669r z 1709446356319j j 1709446356524r r 1709446357516o f 1709446357908m y 1709446358892a w 1709446359886d d 1709446359927l l 1709446360143u k 1709446361153z z 1709446362016x x 1709446362605t t 1709446362959h h 1709446363014f f 1709446363092z z 1709446363610o o 1709446364725d x 1709446365249d u 1709446365762o y 1709446366747x x 1709446368101t t 1709446369500i i 1709446370270x x 1709446370329g w 1709446370797w w 1709446371797j e 1709446372522l g 1709446373544a k 1709446374201b h 1709446374374f l 1709446375245e e 1709446376541x x 1709446377816e e 1709446379066l m 1709446379125n n 1709446379671t h 1709446380094m m 1709446380246q q 1709446380956f f 1709446381548x x 1709446381643m m 1709446381809u u 1709446383203f f 1709446383566c c 1709446384913b b 1709446385340k e 1709446386556k k 1709446387407s s 1709446388170t t 1709446388191d a 1709446389545z h 1709446389906z z 1709446390678n n 1709446391776l l 1709446391829z z 1709446392889y r 1709446393132q r 1709446394018n n 1709446394385p p 1709446395223f f 1709446395503i g 1709446396801s s 1709446396971r r 1709446398087e e 1709446398382n o 1709446398423s s 1709446399436x x 1709446399984m m 1709446400431v v 1709446401468t t 1709446402637b b 1709446403843d f 1709446404170n n 1709446404679m m 1709446405241q l 1709446406691u u 1709446407850p p 1709446408844m f 1709446409659w w 1709446410057f a 1709446410666x x 1709446411642c f 1709446412143f f 1709446412939g g 1709446414196v v 1709446415621k z 1709446416888e e 1709446418134w w 1709446418551i i 1709446419877e e 1709446420846z w 1709446421347k k 1709446421668o o 1709446422865b y 1709446424360m m 1709446425172k p 1709446425808a a 1709446426597w w 1709446426777s k 1709446427775d d 1709446428678n n 1709446429493z z 1709446430150i i 1709446431322h d 1709446432166u u 1709446432453t i 1709446433171z z 1709446434463y y 1709446435095c n 1709446435275z p 1709446436552g g 1709446437365q f 1709446437777c c 1709446438199c c 1709446438310n y 1709446439789w a 1709446441244l l 1709446442169t t 1709446442575o g 1709446443116w w 1709446443602d d 1709446444105r r 1709446445254g g 1709446445425b b 1709446445859v v 1709446446023z z 1709446447159t t 1709446448367v v 1709446449684l l 1709446450633u u 1709446451451s p 1709446452383b b 1709446453688y g 1709446454720v a 1709446455136e e 1709446456456m m 1709446456796a a 1709446457168z g 1709446458466l l 1709446459955p p 1709446460927w w 1709446461347r r 1709446462679u u 1709446463801m u 1709446464251g g 1709446465269r r 1709446466677q q 1709446467124b b 1709446467580k x 1709446468996p p 1709446469001a a 1709446469824q r 1709446470893f f 1709446471894l t 1709446472264w h 1709446473498c c 1709446473833b b 1709446475167e e 1709446475953w w 1709446477010t f 1709446477415h l 1709446477781y y 1709446478826x x 1709446479048z z 1709446479311g o 1709446480664o o 1709446481799j v 1709446483194o o 1709446484484k k 1709446485223r q 1709446486379x x 1709446486917w w 1709446488240u u 1709446489092d o 1709446490280m b 1709446491276e s 1709446491694b u 1709446493078i i 1709446493131b w 1709446494117j j 1709446494546o t 1709446495436c c 1709446495623z i 1709446496584j j 1709446496819w w 1709446497413d e 1709446498898g u 1709446499779v v 1709446501255c c 1709446501274c x 1709446502173c c 1709446502272g e 1709446502800t x 1709446504006a f 1709446504627h h 1709446505144d d 1709446506147h s 1709446506897h h 1709446506936t t 1709446507793k k 1709446509037i i 1709446509910u u 1709446511035e e 1709446511633u u 1709446511709g c 1709446511771s s 1709446512716j p 1709446514208y y 1709446514876f f 1709446515582q q 1709446516718h n 1709446517015w j 1709446517569z z 1709446518619r r 1709446519492q c 1709446520772c v 1709446521322p p 1709446522145r r 1709446522428k k 1709446523110d t 1709446523987q e 1709446525332e e 1709446526089t s 1709446526694i i 1709446527801y y 1709446528944j j 1709446529437k k 1709446530589x x 1709446530609e e 1709446531057b h 1709446532276p q 1709446533084y y 1709446533802i i 1709446534349e s 1709446534614e y 1709446536063u l 1709446537103u v 1709446538295n n 1709446538779c c 1709446539562f k 1709446540755i x 1709446541670b t 1709446541908q q 1709446542877h h 1709446544197h d 1709446545151c e 1709446545494k a 1709446546021q q 1709446547117x x 1709446547328q q 1709446548281k k 1709446549254g c 1709446549410j j 1709446550797n n 1709446551963u u 1709446552124z z 1709446552429n n 1709446552958r r 1709446554164u u 1709446555353b b 1709446556198h n 1709446557081x x 1709446558281j x 1709446559775k k 1709446561151l a 1709446561250a j 1709446562534g g 1709446562629o o 1709446563099u s 1709446564067f f 1709446564315w k 1709446565452h h 1709446566760v v 1709446566762f f 1709446567605j j 1709446568278f c 1709446569146t t 1709446569205n u 1709446570503j j 1709446571150b m 1709446572525o t 1709446573670v v 1709446574126o z 1709446575298s h 1709446575594d d 1709446576650q q 1709446577220d d 1709446577644c c 1709446577935e t 1709446578817v d 1709446579496f f 1709446579738j v 1709446580094u l 1709446580710n n 1709446581840h v 1709446582999m z 1709446583897q q 1709446585001m i 1709446585402b b 1709446586202o x 1709446586773k k 1709446587772b b 1709446588142u u 1709446589633d d 1709446590331r r 1709446591662v v 1709446592989k k 1709446593504z w 1709446594570g g 1709446594629w s 1709446595875t q 1709446596821b t 1709446597278k k 1709446598021i l 1709446599232g g 1709446599704k k 1709446601012t t 1709446601986r r 1709446602915h g 1709446602955a a 1709446603692d d 1709446604026k k 1709446604714l l 1709446605100j j 1709446605666y i 1709446605671t t 1709446606134q q 1709446607569m y 1709446607902f j 1709446607928z z 1709446608736s k 1709446609051h h 1709446610112x z 1709446610612k k 1709446611993n y 1709446612280s s 1709446613236r r 1709446614576z z 1709446614940v z 1709446616305j j 1709446617604l n 1709446618128j j 1709446618714g s 1709446620107k k 1709446621369z j 1709446622060j j 1709446622918e e 1709446624128o o 1709446625063e e 1709446625577e v 1709446626688o g 1709446626921j s 1709446627033o o 1709446627206n m 1709446628173o o 1709446629413v o 1709446629552z z 1709446630130y y 1709446630375d d 1709446631278m m 1709446632698q q 1709446632809p i 1709446634016j j 1709446634593p p 1709446635476f f 1709446635823s s 1709446637171g j 1709446638034b b 1709446639398f n 1709446639590y y 1709446640056v k 1709446640365i i 1709446640783y y 1709446641524q a 1709446642897n n 1709446644289x x 1709446645426t t 1709446645977z z 1709446646040h f 1709446646208j w 1709446646428e e 1709446647727e e 1709446648025d d 1709446648283v o 1709446649099d d 1709446649312s x 1709446649592a a 1709446650292l k 1709446650618f f 1709446651376y y 1709446652873m f 1709446654096l k 1709446654823m m 1709446655058r l 1709446655839e e 1709446657065s i 1709446657251h d 1709446658292a c 1709446658403x x 1709446659705z z 1709446659915b b 1709446660142x x 1709446660664e l 1709446662113c k 1709446662527e e 1709446663658r r 1709446664973b b 1709446665776k k 1709446666467k k 1709446667782p p 1709446668660f f 1709446669016n n 1709446669763m m 1709446670591t t 1709446671490r y 1709446672795g g 1709446674032a a 1709446675411k w 1709446676111x k 1709446676991q i 1709446677880s j 1709446678031f f 1709446678643w d 1709446679497h h 1709446679865e e 1709446680567r v 1709446681089f f 1709446682545p b 1709446683549u b 1709446683917f f 1709446684328o o 1709446684504w w 1709446684686s h 1709446685579c k 1709446686421p e 1709446687547y y 1709446687750i i 1709446688064v m 1709446688919p p 1709446689923g g 1709446690944y y 1709446691173u u 1709446691705v v 1709446693048d d 1709446694360u u 1709446694893r r 1709446695166z z 1709446696394w w 1709446697600a a 1709446697865j j 1709446697969s s 1709446698017k b 1709446698518n n 1709446698815a a 1709446699368o i 1709446700300x j 1709446700809u u 1709446702187x x 1709446703151w w 1709446703663x x 1709446704672j j 1709446705963o o 1709446707016t t 1709446707479c v 1709446708413t n 1709446708976d e 1709446709635b b 1709446710305u x 1709446711346b g 1709446711813r z 1709446712763l l 1709446713561p p 1709446713788m m 1709446714077c t 1709446714424b b 1709446715635o o 1709446716020u p 1709446716452n e 1709446716882f j 1709446717253i i 1709446718272o c 1709446719494j j 1709446720068k k 1709446721053t t 1709446721295t f 1709446722678n y 1709446723250p h 1709446724674i v 1709446724710o o 1709446725671k j 1709446726373f g 1709446727423d d 1709446727533v d 1709446727635l p 1709446727857q i 1709446728655s h 1709446728926c c 1709446730065o m 1709446730573u u 1709446731359e e 1709446732858s s 1709446734159j j 1709446734965m e 1709446736386y u 1709446736927l l 1709446738037x x 1709446738789d d 1709446740247r r 1709446741166a a 1709446742014f f 1709446742412o y 1709446743373t t 1709446744333h a 1709446745395w w 1709446746429h h 1709446747241h h 1709446747996m m 1709446749136q q 1709446750298k d 1709446751095u k 1709446752179g g 1709446752685x z 1709446752687y q 1709446752716j m 1709446753481w b 1709446753766c w 1709446754262t t 1709446754989t t 1709446755808d d 1709446757243r r 1709446757564i i 1709446758766m m 1709446759852u u 1709446760948v v 1709446761152p p 1709446761534y y 1709446761613o o 1709446761673d h 1709446762029n n 1709446762064n k 1709446763546f p 1709446764110o k 1709446765343b m 1709446766694i n 1709446768169v v 1709446769151a a 1709446769844r r 1709446770230a d 1709446771406r r 1709446772239e e 1709446773716p p 1709446774088b k 1709446774374f f 1709446775654a a 1709446776967x x 1709446777327o o 1709446778690d d 1709446778738u p 1709446779946m k 1709446780589u u 1709446781548j j 1709446782699d d 1709446783371t t 1709446783608h h 1709446784630u u 1709446785527q q 1709446786759y y 1709446787026z z 1709446787734h h 1709446788265h h 1709446788861n n 1709446789174d d 1709446789506i i 1709446789810d j 1709446791308w a 1709446791393x x 1709446792188v a 1709446793390p p 1709446794665m m 1709446795957h h 1709446796167q f 1709446797276d d 1709446797422v v 1709446798152i f 1709446799191r n 1709446799287y y 1709446800022z x 1709446801119n j 1709446801889a a 1709446802767f f 1709446804053p p 1709446804677y y 1709446805785x x 1709446807073z n 1709446807305u t 1709446808762o o 1709446810113x x 1709446811220y y 1709446811991d y 1709446812145r g 1709446812409s s 1709446813262b b 1709446813667z z 1709446814485a a 1709446815344s i 1709446816819o o 1709446816865w x 1709446817929i x 1709446818701y y 1709446819440u u 1709446820489t r 1709446821779c c 1709446821930a h 1709446822817l l 1709446822891v x 1709446823298z g 1709446824615f f 1709446825414d d 1709446826127a a 1709446826741u u 1709446827178f n 1709446827905b b 1709446828888b f 1709446829290f f 1709446830392e g 1709446830674o o 1709446831624i i 1709446831706w c 1709446832256u u 1709446833418e e 1709446834565v n 1709446835747w f 1709446836243o x 1709446837367c l 1709446837996b b 1709446838439v v 1709446839002s s 1709446839628b u 1709446840438d d 1709446840625j j 1709446842092r r 1709446842815f f 1709446843958j n 1709446844975a a 1709446845465l i 1709446846259h h 1709446847669j j 1709446848504u c 1709446848566n n 1709446849029z z 1709446849749b b 1709446850228c c 1709446850317c c 1709446851005s s 1709446851660m v 1709446851691f f 1709446852386z z 1709446852968k k 1709446853212y y 1709446854387t t 1709446855388f i 1709446856111w k 1709446856550i i 1709446857151u u 1709446857516j j 1709446857628o o 1709446858651e v 1709446859249r d 1709446860725t t 1709446861357l l 1709446861818c e 1709446862862h h 1709446863468p p 1709446864498r r 1709446865156q h 1709446866346i i 1709446866708g b 1709446866954x d 1709446868202q q 1709446869670v v 1709446870245h h 1709446870697e e 1709446871962r r 1709446872640w w 1709446874040m m 1709446874788w w 1709446875215k k 1709446876700y y 1709446876770k g 1709446876783d d 1709446877432h h 1709446877593y i 1709446877668t t 1709446878884o o 1709446879094s s 1709446879393u n 1709446880448i y 1709446880677e e 1709446881377u u 1709446881983w q 1709446882800u f 1709446883397h h 1709446883729y k 1709446884070o q 1709446885092o o 1709446885393b b 1709446886851n u 1709446888188l l 1709446888550r x 1709446889083u u 1709446889984q a 1709446890814w w 1709446891362v v 1709446891705x g 1709446892570w d 1709446892775s d 1709446893246q q 1709446894161q h 1709446894739b o 1709446896017i i 1709446896715t t 1709446897259s w 1709446897927a y 1709446899119d d 1709446899942i h 1709446900511e k 1709446900725f f 1709446901213z z 1709446901993n n 1709446903285y y 1709446904553k k 1709446905446c c 1709446906343m u 1709446907092t t 1709446908129b l 1709446909598e e 1709446910215q q 1709446910503e e 1709446911800n f 1709446912721s s 1709446913865i q 1709446914176f f 1709446915200b c 1709446915451b b 1709446916538w w 1709446916821z w 1709446917472k k 1709446918629f f 1709446919409x o 1709446920853r n 1709446922216q q 1709446922988o o 1709446923304p p 1709446924088r r 1709446925157y y 1709446925414i i 1709446925745d j 1709446925877b b 1709446927185p l 1709446927548t t 1709446928682x s 1709446928773m m 1709446929050f f 1709446929193g g 1709446929201g r 1709446929573c s 1709446929738w d 1709446930255k b 1709446930991x n 1709446932406r r 1709446933373x r 1709446934186b b 1709446935180q q 1709446936550e e 1709446936782k k 1709446938197i t 1709446938302r r 1709446939112b b 1709446939436c m 1709446939857s b 1709446940926e b 1709446941222r r 1709446942250y y 1709446942278m m 1709446942752u u 1709446943542w w 1709446944531n n 1709446945114m u 1709446945224l w 1709446945308e e 1709446945423w s 1709446945842a y 1709446946542x m 1709446946953y y 1709446947951y y 1709446948441n n 1709446949008w w 1709446949553p p 1709446950722e e 1709446951939h h 1709446952095o o 1709446953561o o 1709446954010z v 1709446954426q t 1709446954426g g 1709446954520u a 1709446955766q r 1709446957080o o 1709446957125k k 1709446957481l l 1709446958924c c 1709446959671l l 1709446960963o o 1709446961023e b 1709446962417m l 1709446963019f f 1709446963245y y 1709446964103w w 1709446964681y u 1709446964841i a 1709446965852b o 1709446966923o o 1709446968312l l 1709446969262p k 1709446969803u u 1709446970430s s 1709446970727k k 1709446971547n n 1709446972258a a 1709446973522q v 1709446974998b b 1709446976406c c 1709446977413h m 1709446978522a a 1709446978929u u 1709446980375d f 1709446981642w w 1709446983044v f 1709446983819z z 1709446984833l q 1709446985180p k 1709446985292r r 1709446986316f n 1709446987422o o 1709446988486n l 1709446989923f o 1709446990300c t 1709446991150y y 1709446992271h z 1709446993295f f 1709446993478f n 1709446993892y d 1709446995333w w 1709446995374s u 1709446996126o t 1709446997579r s 1709446997982l l 1709446998903w w 1709446999640c c 1709446999935h h 1709447000116t t 1709447000203f z 1709447001371s s 1709447001945w y 1709447002636b b 1709447002755n n 1709447004082m l 1709447005395b r 1709447005955w o 1709447007243o o 1709447008088w w 1709447009458n n 1709447010090n n 1709447010194o o 1709447010692y y 1709447010868k k 1709447011260w w 1709447011577i i 1709447011604y y 1709447011782q p 1709447012742d d 1709447012850s s 1709447014283c c 1709447014784w w 1709447015835a a 1709447017062s h 1709447017871d f 1709447018375n n 1709447019042t t 1709447019858u y 1709447020351v f 1709447021599y y 1709447022236u u 1709447022355q h 1709447023001y y 1709447023312p y 1709447024529z s 1709447024677a a 1709447024719r z 1709447025746i w 1709447025994q q 1709447026236g r 1709447026992m q 1709447028157u u 1709447028750x x 1709447030245c c 1709447031147e e 1709447031260w w 1709447032626c h 1709447033632a j 1709447033776b b 1709447034797t d 1709447036062t t 1709447037321r l 1709447038774u u 1709447040034t t 1709447041421x x 1709447042382j g 1709447043040n n 1709447044130o j 1709447045497q q 1709447046393z u 1709447047560f l 1709447048501i y 1709447048817p p 1709447049165u e 1709447050594l k 1709447051109n t 1709447051812a h 1709447052339o o 1709447052877f f 1709447053467t t 1709447053932b x 1709447054172h h 1709447055517m e 1709447055647o f 1709447057112h g 1709447057694x b 1709447058281x x 1709447058311f f 1709447059469y o 1709447060869c c 1709447061333v v 1709447062372u g 1709447063231d d 1709447063876c k 1709447065281k z 1709447066549y k 1709447067454m m 1709447068699s s 1709447069735y y 1709447069898y a 1709447070632q q 1709447071726g k 1709447072483x x 1709447073534i v 1709447074002x z 1709447074848x w 1709447074990q v 1709447075750f f 1709447076117v v 1709447076596r r 1709447077809r x 1709447078914n e 1709447079294y y 1709447079690y b 1709447079878u u 1709447080074g g 1709447080267y y 1709447081723x d 1709447082217p p 1709447082263h h 1709447083368i i 1709447084336s s 1709447084372a a 1709447085361b s 1709447085717p p 1709447086045u u 1709447086745a a 1709447087866e p 1709447087894w w 1709447088192b a 1709447089473p y 1709447090745x x 1709447091700g u 1709447092032o b 1709447092541d d 1709447092722s y 1709447092847w w 1709447093179k k 1709447094140d e 1709447094246d t 1709447095061t t 1709447095114b b 1709447095632y q 1709447096672j j 1709447097201k i 1709447097750f f 1709447098436b b 1709447098919q q 1709447099525g k 1709447100901a x 1709447102212i i 1709447102929v v 1709447104317p z 1709447104356n m 1709447104519f f 1709447104534r r 1709447104720x x 1709447105148i i 1709447106455s s 1709447106685d d 1709447108164i i 1709447109044g g 1709447109633w w 1709447109737q j 1709447111125c l 1709447111633q q 1709447111944m o 1709447112629f f 1709447112914z z 1709447114305x x 1709447115109j j 1709447116435h h 1709447117633u u 1709447118471i i 1709447118963g g 1709447119509s s 1709447119850b b 1709447120996s s 1709447122284y a 1709447122831i i 1709447123477q q 1709447124085f f 1709447124959g g 1709447125342u m 1709447126754p p 1709447127573o o 1709447128465x o 1709447128567a a 1709447128920y c 1709447130416n h 1709447130699v x 1709447131605s w 1709447132228h d 1709447133585o o 1709447133886d d 1709447134473k k 1709447135795y b 1709447136721b b 1709447137485j j 1709447138312z z 1709447139369z z 1709447140362d p 1709447141724y y 1709447143219l w 1709447144476s s 1709447145316x x 1709447146449m q 1709447147241i i 1709447148027i x 1709447148401k k 1709447148676a a 1709447149177e e 1709447149311w w 1709447149840b b 1709447150315a o 1709447151299r r 1709447152119x x 1709447153014o o 1709447153433e e 1709447154579b b 1709447155897o o 1709447156795t t 1709447157567g g 1709447157816d y 1709447158829c c 1709447159405g h 1709447160300k z 1709447161285p a 1709447161805j j 1709447162935o o 1709447164325c c 1709447164508j j 1709447165505l l 1709447166960u n 1709447167070y y 1709447167804g g 1709447168616x w 1709447169453k k 1709447170889g g 1709447172163q q 1709447173259r r 1709447173763c d 1709447173894l l 1709447174868s s 1709447176078y y 1709447176393t m 1709447177237g v 1709447178240c c 1709447178727j s 1709447179598o o 1709447180251o a 1709447181209k k 1709447181721r h 1709447182735q q 1709447183044u c 1709447183082z o 1709447183442e e 1709447184172z a 1709447184335g g 1709447184881c u 1709447185160o o 1709447185252d l 1709447186486w w 1709447186858p p 1709447187188o o 1709447188609s k 1709447188674m m 1709447189682f w 1709447190024f w 1709447190431y y 1709447191017u u 1709447192495v v 1709447193545c t 1709447194759r d 1709447195468j a 1709447195582b b 1709447195984x x 1709447197399i i 1709447198252d d 1709447198543z d 1709447199770s s 1709447200125c c 1709447201260y n 1709447202730m i 1709447204046n t 1709447204402l l 1709447205550c z 1709447205574c z 1709447206431x x 1709447206793d d 1709447208212i i 1709447208371u u 1709447209283d c 1709447210218o a 1709447210782q s 1709447211531o e 1709447212119z z 1709447212953z z 1709447213674r r 1709447214858w z 1709447216279f f 1709447216519m f 1709447217701x y 1709447218064m m 1709447219274j m 1709447219611s s 1709447220947n n 1709447221547v v 1709447222222p p 1709447222916h h 1709447224111f b 1709447224562m s 1709447225572d j 1709447226506i i 1709447227302v v 1709447227941a a 1709447228495b u 1709447228696h h 1709447228946l g 1709447228973q q 1709447230144j j 1709447230897p y 1709447231235v m 1709447231478u u 1709447232444k k 1709447232445d d 1709447233726p p 1709447233736r g 1709447234466v v 1709447235092b b 1709447235905j j 1709447236625a a 1709447237304z m 1709447238596a l 1709447238926f i 1709447239196q q 1709447239443p p 1709447239622x x 1709447239879d d 1709447240507j c 1709447241513t l 1709447242815c c 1709447244047d d 1709447244924i i 1709447246401a a 1709447247195r r 1709447248162t t 1709447248610z z 1709447248936t t 1709447249847p p 1709447250012l g 1709447250220n n 1709447251372f f 1709447252053r t 1709447252913k k 1709447254246a b 1709447254386p p 1709447255257z z 1709447256675w v 1709447256920l v 1709447257229y y 1709447257789j j 1709447258176u r 1709447258973c c 1709447260165v v 1709447260906y d 1709447261185c c 1709447262089m m 1709447262748l i 1709447263114f f 1709447264254o o 1709447265379p p 1709447266260n n 1709447266309f j 1709447267456i i 1709447267627f r 1709447268417u u 1709447268626y y 1709447269098r w 1709447269728d o 1709447270377g m 1709447270432p p 1709447271334d l 1709447271503n n 1709447271554h h 1709447272609z j 1709447273223y v 1709447273612q q 1709447273725l l 1709447274303q q 1709447275766q q 1709447275910x x 1709447276696h w 1709447277443n n 1709447278505p p 1709447279296u u 1709447280147n j 1709447280566i i 1709447281325b b 1709447282260s x 1709447282289s s 1709447282430r r 1709447283593n h 1709447284115p p 1709447284843k k 1709447285359s b 1709447286239o m 1709447287313b c 1709447287842q q 1709447288004q g 1709447289192g g 1709447290004b b 1709447290977g n 1709447292071y c 1709447292339p p 1709447293487g g 1709447294322b b 1709447295579p p 1709447296189h t 1709447297278p k 1709447297771e e 1709447298174f w 1709447299042y a 1709447300063q q 1709447301538n n 1709447301913d k 1709447301915x x 1709447301983k t 1709447303235q d 1709447303852s s 1709447305072p p 1709447306223d d 1709447306260l l 1709447306339s b 1709447306432j j 1709447307195y y 1709447308078x x 1709447308678s s 1709447309383g j 1709447310306m k 1709447311255p n 1709447311588f w 1709447311740o m 1709447312879o o 1709447313928m m 1709447315426y y 1709447316806h h 1709447317076d q 1709447318389t r 1709447318486f b 1709447319464m v 1709447319952a n 1709447321293n i 1709447322350m m 1709447322554o q 1709447323812f f 1709447324447l l 1709447324464h h 1709447325117x x 1709447326184i i 1709447326708h h 1709447326789i i 1709447327661j n 1709447329144s s 1709447329485e n 1709447330836t t 1709447330929r r 1709447331353r r 1709447332083x x 1709447332846a a 1709447333412g g 1709447333574p f 1709447334046x v 1709447334413d d 1709447334979c c 1709447335806c c 1709447335876n e 1709447336920m m 1709447338125r r 1709447338362z w 1709447339241h h 1709447340110u u 1709447341290e e 1709447341868w w 1709447341946o o 1709447343317f f 1709447343916m m 1709447344177g g 1709447345207e e 1709447346362r r 1709447347427a a 1709447347629z l 1709447348350k k 1709447348976h z 1709447349826e q 1709447350124w w 1709447350822o o 1709447351833c c 1709447353300q i 1709447353448k k 1709447354347l l 1709447355310b f 1709447356544j j 1709447357232p p 1709447357829v v 1709447358826z z 1709447359201f d 1709447359850w g 1709447360127l s 1709447361074k k 1709447361468c c 1709447362545s s 1709447363246q q 1709447364737h e 1709447365228c c 1709447366548e e 1709447366939c c 1709447367909g n 1709447368604o o 1709447369297l l 1709447370575s y 1709447371319s s 1709447371924b n 1709447372196l p 1709447373390x d 1709447374019c i 1709447375143z z 1709447376521r m 1709447377034x x 1709447378178e e 1709447378490w c 1709447379857e s 1709447379978e e 1709447379988h d 1709447381108x x 1709447381824o q 1709447381945k u 1709447382211d s 1709447383131o o 1709447383634m m 1709447384477o b 1709447385187e e 1709447386445c h 1709447386977w e 1709447387170p p 1709447388144s l 1709447389629t l 1709447390026u g 1709447391468w w 1709447392956t t 1709447393001x x 1709447394235k y 1709447395269q k 1709447395378s s 1709447396203i i 1709447396913v o 1709447398038u f 1709447398643g g 1709447399570j a 1709447400439g g 1709447400503o o 1709447401721c c 1709447402217w i 1709447403161n n 1709447403749i h 1709447403803v q 1709447404375f f 1709447404617i r 1709447405392h h 1709447406087p p 1709447406573m m 1709447406980u u 1709447407281n n 1709447407555q q 1709447409054m m 1709447409080u u 1709447409670t t 1709447410814i b 1709447411318d d 1709447412718a y 1709447413054o o 1709447413383o o 1709447414410v l 1709447414647x x 1709447415209q c 1709447415526n i 1709447415796w w 1709447416360t t 1709447417033n j 1709447417639g g 1709447418886o o 1709447420067e g 1709447421117b u 1709447421529d d 1709447422312r i 1709447423257z c 1709447424476x f 1709447424679c c 1709447425037b b 1709447425664c c 1709447426041b b 1709447426427b b 1709447427812r r 1709447428602a q 1709447430040r b 1709447431284f f 1709447431698l l 1709447433118x x 1709447433311n d 1709447433330q q 1709447434756y b 1709447435785x x 1709447437194a u 1709447438026p v 1709447438469x q 1709447439966t t 1709447440618h h 1709447441585n f 1709447441595r r 1709447441610w w 1709447442511g g 1709447442739u u 1709447443550x x 1709447444324v v 1709447445230v v 1709447446381c c 1709447447213n s 1709447447576o o 1709447448947t n 1709447449773t t 1709447450042t j 1709447451229n n 1709447452099j c 1709447452828z x 1709447454097k k 1709447455099k k 1709447455799v v 1709447456584r d 1709447457266a a 1709447457317y y 1709447457909n n 1709447458198h f 1709447459690i i 1709447460788c h 1709447461090f v 1709447461219w w 1709447462348w f 1709447462778k x 1709447463321x u 1709447464495x f 1709447465088f t 1709447465799g g 1709447466950r r 1709447467486d d 1709447468181c c 1709447469333b b 1709447469340g g 1709447470001j j 1709447470478b b 1709447471419g s 1709447471534x x 1709447471716t t 1709447473008y y 1709447473570u s 1709447474720p d 1709447474990i z 1709447475018k k 1709447475580d d 1709447476923i i 1709447477943i x 1709447479076b b 1709447479972h k 1709447480371q x 1709447480784k k 1709447481986f f 1709447483095n n 1709447483412u u 1709447484450j u 1709447485550s s 1709447486887q q 1709447487214h m 1709447488677v u 1709447489001n h 1709447490310v v 1709447490386c k 1709447491186j j 1709447492474n n 1709447493877q q 1709447494734g g 1709447496039v g 1709447496058s s 1709447496523x s 1709447497562u u 1709447497870y y 1709447498048z z 1709447499000y a 1709447500277f f 1709447500937v v 1709447501227e e 1709447502524d k 1709447503477o n 1709447504734e z 1709447505899s c 1709447506613t t 1709447507104l o 1709447508485g s 1709447508769u u 1709447509788x a 1709447511168y y 1709447512269x u 1709447512823u u 1709447514099q q 1709447515175u u 1709447516212t t 1709447517406b b 1709447518814z z 1709447519768y y 1709447521011l z 1709447522339g g 1709447523536x e 1709447524869u f 1709447526169a a 1709447527076k k 1709447527838h h 1709447528305p p 1709447529196r r 1709447530297y y 1709447531478u r 1709447532815b b 1709447532895r r 1709447533238h h 1709447534492w w 1709447534516i i 1709447535063i i 1709447535089v i 1709447535208x x 1709447536622r r 1709447536979y k 1709447538019k k 1709447538995k k 1709447539544r r 1709447539633o b 1709447540538w c 1709447541706u u 1709447543028e s 1709447544455a a 1709447545576z s 1709447545778j v 1709447547129p c 1709447547686g g 1709447548564b b 1709447549192v v 1709447550658o f 1709447551077b b 1709447551903i a 1709447552690c c 1709447553440i s 1709447554235a a 1709447554368z z 1709447555570p p 1709447555761p a 1709447556787p p 1709447558266h h 1709447559512n n 1709447560818h h 1709447561669l s 1709447562909u u 1709447563637d d 1709447564159t y 1709447565356k s 1709447566057w w 1709447567278f z 1709447567497e e 1709447568762d d 1709447568884m s 1709447569842e e 1709447570331w l 1709447571688d o 1709447572317g f 1709447572333t c 1709447573797y o 1709447573842x x 1709447575210e n 1709447576151l l 1709447576213s s 1709447577314e e 1709447578163j h 1709447579427b b 1709447580560y r 1709447582006l l 1709447583318m m 1709447583422l l 1709447583425u u 1709447584575m e 1709447585848z z 1709447586755v v 1709447586798n n 1709447587933f w 1709447588100z z 1709447588218q w 1709447589581y y 1709447590485d d 1709447590590n m 1709447590704x x 1709447591541r r 1709447592989o t 1709447593624b b 1709447594289o l 1709447595556x a 1709447595791d d 1709447596153a a 1709447597482d d 1709447598339m m 1709447599271t t 1709447600621c c 1709447601891k k 1709447602566u h 1709447603595t t 1709447604010d d 1709447605147o r 1709447605270a a 1709447606451p r 1709447606773l l 1709447608076i i 1709447608798q q 1709447610138m m 1709447610987w w 1709447611207d r 1709447611410u u 1709447612822b b 1709447614042c k 1709447614223l p 1709447614920i q 1709447616369z z 1709447617351b s 1709447617493h b 1709447618093w w 1709447619569i i 1709447619584u u 1709447620006g g 1709447620306q q 1709447621211b b 1709447622023z z 1709447622122w t 1709447622680
题意解析:
给了2000次操作,每个操作一行,每行内第一个是待敲击字符(a),第二个是玩家(忘了名字)敲击的字符(b),第三个是当前的毫秒时间戳,a和b相等且和上一次的时间戳的差在1000以内成为1次连击,问这2000次操作内最大连击次数。
个人思路:
读到程序里,一行行遍历,如果前两个相等则看当前时间戳减上一行时间戳看是否满足1000以内,满足则tans++(临时存储),一旦不满足则让ans(最终答案)和tans取个大,然后tans=0,全部遍历完后输出ans看一下即可。
当然还有个既简单又愚蠢的办法,那就是把数据放到excel中,让第三个数据后减前得到当前操作和上次操作间隔的时间,然后一行行看,手动记录(doge),笔者自己就是这么做的(因为忘记了怎么读文件了,但凡它数据量达到5000以上,笔者绝对会灰溜溜地去翻文档)。
个人代码答案:9
代码之后更新。
C.数字诗意
题目原文:
题意解析:
一个数如果可以表示为连续的自然数之和(>=2个数字)称为诗意数字,问给n个数有几个不是诗意数字。
样例输入:
33 6 8
样例输出:
1
个人思路:
这个无需保存,即时读入即时处理即时记录。人话就是每读入一个数字就check一下是否是诗意数字,不是就ans++。判断的原理是奇数必定是诗意数字(1=0+1,3=1+2,5=2+3……)[订正:1不行,因为0不是正整数],偶数如果是可以表示为2的n次幂(例如2,4,8,16)则不是诗意数字,其余偶数都是诗意数字(笔者从1到32中抽了几个有代表性的数字试出来的结论,所以笔者也不知道为什么是这样)。
个人代码:
#include <bits/stdc++.h>#define int long longusing namespace std;const int N = 2e5 + 10;int a[N];bool check(int x){bool flag = false; if (x == 1) return true;if (x % 2) return false;else{while (x){if (x % 2 && x != 1) flag = true;x /= 2;}if (flag) return false;return true;}}void solve(){int ans = 0, n; cin >> n;for (int i = 1; i <= n; i ++ ){int x; cin >> x;if (check(x)) ans ++;}cout << ans;}signed main(){ios::sync_with_stdio(0), cin.tie(0), cout.tie(0);int t = 1;// cin >> t;while (t --) solve();return 0;}
D.封闭图形个数(排序)
题目原文:
题意解析:
8有两个封闭图形,0、4、6、9有一个封闭图形,1、2、3、5、7有一个封闭图形,按照一个数字的封闭图形个数为第一关键字,数字的大小为第二关键字排序,所以在本题中0到1从小到大排序的结果是1 2 3 5 7 0 4 6 9 8。
个人思路:
用结构体记录当前数字的大小和封闭图形数目,读入时用个函数算出来存到结构体中,重载一下<运算符sort一下就可以了。是不是很简单。
样例输入:
318 29 6
样例输出:
6 29 18
个人代码:
#include <bits/stdc++.h>#define int long longusing namespace std;const int N = 2e5 + 10;struct A{int x, y;bool operator < (const A & u) const{if (y == u.y) return x < u.x;return y < u.y;}}a[N];int ttt(int x){int res = 0;if (x == 0) return 1;while (x){if (x % 10 == 8) res += 2;else if (x % 10 == 0 || x % 10 == 4 || x % 10 == 6 || x % 10 == 9)res ++;x /= 10;}return res;}void solve(){int n; cin >> n;for (int i = 1; i <= n; i ++ ) cin >> a[i].x, a[i].y = ttt(a[i].x);sort(a + 1, a + 1 + n);for (int i = 1; i <= n; i ++ ) cout << a[i].x << ' ';}signed main(){ios::sync_with_stdio(0), cin.tie(0), cout.tie(0);int t = 1;// cin >> t;while (t --) solve();return 0;}
E.回文数组
题目原文:
题意解析:
给一个数组,每一步可以选择1个数字+1或-1,也可以选择相邻两个数字同时+1或-1,问要变成回文数组最少需要多少步。
个人思路:
两个不同数字如果要通过+1或-1的操作变成两个相同的数字,需要的次数是两个数字差的绝对值,于是把数组回文对应位置的差的绝对值存入另一数组,由于可以把两个相邻位置的压缩成那个大值(比如第一个数字需要5次+1操作变成最后一个数字,第二个数字需要3次+1操作变成倒数第二个数字,则可以前三次同时对第一个和第二个数字+1,这样第二个数字已经和倒数第二个数字相同,而第一个数字还差两次+1操作和最后一个数字相同,所以总共需要5次操作)。
上面一段是笔者想的比较清楚的地方,下边就是可能会有问题的地方了。
ans1记录每次找两个值,从第一个数字开始,每次加2,取i和i+1中的最大值。
ans2记录每次找两个值,从第二个数字开始,每次加2,取i-1和i中的最大值。
ans3记录每次找三个值,从第二个数字开始,每次加3,后边不大会描述,看代码吧。
样例输入:
41 2 3 4
样例输出:
3
个人代码:
#include <bits/stdc++.h>#define int long longusing namespace std;const int N = 1e5 + 10;int a[N], t[N], cnt;void solve(){int n; cin >> n;for (int i = 1; i <= n; i ++ ) cin >> a[i];int l = 1, r = n;while (l < r){t[++ cnt] = abs(a[l] - a[r]);l ++, r --;}int ans1 = 0, ans2 = 0, ans3 = 0;for (int i = 1; i <= cnt; i +=2 ) ans1 += max(t[i], t[i + 1]);for (int i = 2; i <= cnt; i +=2 ) ans2 += max(t[i - 1], t[i]);for (int i = 2; i <= cnt; i +=3 ){int ma = max(max(a[i - 1], a[i]), a[i + 1]);int mi = min(min(a[i - 1], a[i]), a[i + 1]);ans3 += ma + mi;}cout << min(min(ans1, ans2), ans3);}signed main(){ios::sync_with_stdio(0), cin.tie(0), cout.tie(0);int t = 1;// cin >> t;while (t --) solve();return 0;}
F.商品库存管理(差分)
题目原文:
题意解析:
有n个商品,初始数目都为0,有m次操作,每次把l到r区间内的商品数目都+1,问如果不进行第i次操作会多几个数目为0的商品【好吧,写到这里,笔者发现自己好像读错题了,有可能是如果不进行第i次操作会有几个数目为0的商品(悲】。
个人思路:
先做个差分数组,用个结构体数组存每一次操作的l和r,同时进行差分,完事后对差分数组进行前缀和恢复成每个商品数目的数组。然后遍历结构体数组看l到r区间内有多少个1【好吧,就算没读错也会tle,不过能骗几分是几分。就在这里,笔者苦思冥想了很久都想不出如何优化,恳请各位大佬教教,给说说用什么算法优化也行】。
样例输入:
5 31 22 43 5
样例输出:
101
个人代码:
#include <bits/stdc++.h>#define int long longusing namespace std;const int N = 3e5 + 10;int a[N], diff[N];struct OP{int l, r;}op[N];void solve(){int n, m; cin >> n >> m;for (int i = 1; i <= m; i ++ ){cin >> op[i].l >> op[i].r;diff[op[i].l] ++;diff[op[i].r + 1] --;}for (int i = 1; i <= n; i ++ ) a[i] = a[i - 1] + diff[i];for (int i = 1; i <= m; i ++ ){int ans = 0;for (int idx = op[i].l; idx <= op[i].r; idx ++ )if (a[idx] == 1) ans ++;cout << ans << '\n';}}signed main(){ios::sync_with_stdio(0), cin.tie(0), cout.tie(0);int t = 1;// cin >> t;while (t --) solve();return 0;}
G.挖矿
题目原文:
题意解析:
在一个数轴上,有n个点有矿坑,每个矿坑只能采集一个矿石(可以重复走但不重复给矿石),一共可以走m步,问最多可以采集到多少矿石。
个人思路:
笔者的思路仅到先排序然后判断只往正方向走m步能获得多少矿石或只往负方向走m步能获得多少矿石,再往后如果有走过来走过去的还没想明白,笔者自己想明白了后会补充上,当然,要有大佬指路就再好不过了。
样例输入:
5 40 -3 -1 1 2
样例输出:
4
个人代码:
所以暂时还没有,等想明白写出来了后再更新吧。
H.回文字符串
题目原文:
题意解析:
给定一个小写字符串s,在s前面可以加上任意数目的(l,q,b),问能否转化为回文串,如果可以输出“Yes”,否则输出“No”。
个人思路:
有三种情况,我们一一来介绍。
1:如果原本是回文字符串则可以。
2:如果该字符串中只存在l,q,b三种字符也可以。
3:如果去掉最后的l,q,b连着的子串,前面的子串是回文字符串也可以。
样例输入:
3gmgqlqpalbllaaa
样例输出:
YesNoYes
个人代码:
#include <bits/stdc++.h>#define int long longusing namespace std;const int N = 1e6 + 10;int tt[27];char s1[N];bool check(string s){int l = 0, r = s.length() - 1;while (l < r){if (s[l] != s[r]) return false;l ++, r --;}return true;}bool check1(int len){int l = 0, r = len;while (l < r){if (s1[l] != s1[r]) return false;l ++, r --;}return true;}void solve(){string s; cin >> s;for (int i = 0; i < s.length(); i ++ ) tt[s[i] - 'a'] ++;if (check(s) || tt['l' - 'a'] + tt['q' - 'a'] + tt['b' - 'a'] == s.length()){cout << "Yes\n";return;}int lqbl = s.length() - 1;for (; lqbl >= 0; lqbl -- )if (s[lqbl] != 'l' && s[lqbl] != 'q' && s[lqbl] != 'b') break;for (int i = lqbl; i >= 0; i -- ) s1[i] = s[i];if (check1(lqbl)) cout << "Yes\n";else cout << "No\n";}signed main(){ios::sync_with_stdio(0), cin.tie(0), cout.tie(0);int t = 1;cin >> t;while (t --) solve();return 0;}
二、代码注释版
C.数字诗意
//万能头文件,涵盖了算竞用的大部分库#include <bits/stdc++.h>//十年oi一场空,不开long long见祖宗#define int long long//使用std命名空间using namespace std;const int N = 2e5 + 10;int a[N];//判断一下x是否是诗意数字bool check(int x){bool flag = false;//奇数是诗意数字,1不是 if (x == 1) return true;if (x % 2) return false;else{while (x){//如果出现了非1的奇数说明该数不是2的n次幂,也就是诗意数字if (x % 2 && x != 1) flag = true;x /= 2;}if (flag) return false;return true;}}void solve(){int ans = 0, n; cin >> n;for (int i = 1; i <= n; i ++ ){int x; cin >> x;//如果x是不是诗意数字,ans累加1if (check(x)) ans ++;}cout << ans;}signed main(){ios::sync_with_stdio(0), cin.tie(0), cout.tie(0);int t = 1;// cin >> t;while (t --) solve();return 0;}
D.封闭图形个数
#include <bits/stdc++.h>#define int long longusing namespace std;const int N = 2e5 + 10;//定义结构体struct A{//x指数字大小,y指当前数字封闭图形个数int x, y;//重载<运算符bool operator < (const A & u) const{//如果封闭图形个数相同,则比较数字大小if (y == u.y) return x < u.x;return y < u.y;}}a[N];//计算数字的封闭图形个数int ttt(int x){int res = 0;//如果数字是0,直接返回1,因为0进不去whileif (x == 0) return 1;//判断非0数字while (x){//如果其中有8,加2,有0、4、6、9,加1if (x % 10 == 8) res += 2;else if (x % 10 == 0 || x % 10 == 4 || x % 10 == 6 || x % 10 == 9)res ++;//别忘了把最后一位去掉x /= 10;}return res;}void solve(){int n; cin >> n;//读入并计算封闭图形数目for (int i = 1; i <= n; i ++ ) cin >> a[i].x, a[i].y = ttt(a[i].x);//排序sort(a + 1, a + 1 + n);//输出for (int i = 1; i <= n; i ++ ) cout << a[i].x << ' ';}signed main(){ios::sync_with_stdio(0), cin.tie(0), cout.tie(0);int t = 1;// cin >> t;while (t --) solve();return 0;}
E.回文数组
#include <bits/stdc++.h>#define int long longusing namespace std;const int N = 1e5 + 10;//t数组存放对应位数差的绝对值int a[N], t[N], cnt;void solve(){int n; cin >> n;for (int i = 1; i <= n; i ++ ) cin >> a[i];//计算并存放对应位数差的绝对值int l = 1, r = n;while (l < r){t[++ cnt] = abs(a[l] - a[r]);l ++, r --;}//计算ans1、ans2、ans3int ans1 = 0, ans2 = 0, ans3 = 0;//ans1从第一个开始找,我太蠢了,居然没注意到ans1和ans2算的是同一个玩意for (int i = 1; i <= cnt; i +=2 ) ans1 += max(t[i], t[i + 1]);for (int i = 2; i <= cnt; i +=2 ) ans2 += max(t[i - 1], t[i]);for (int i = 2; i <= cnt; i +=3 ){int ma = max(max(a[i - 1], a[i]), a[i + 1]);int mi = min(min(a[i - 1], a[i]), a[i + 1]);ans3 += ma + mi;}cout << min(min(ans1, ans2), ans3);}signed main(){ios::sync_with_stdio(0), cin.tie(0), cout.tie(0);int t = 1;// cin >> t;while (t --) solve();return 0;}
F.商品库存管理
#include <bits/stdc++.h>#define int long longusing namespace std;const int N = 3e5 + 10;//a存放改完后的商品数目,diff表示差分数组int a[N], diff[N];//定义记录每次操作的结构体struct OP{int l, r;}op[N];void solve(){int n, m; cin >> n >> m;//m次操作for (int i = 1; i <= m; i ++ ){cin >> op[i].l >> op[i].r;//差分diff[op[i].l] ++;diff[op[i].r + 1] --;}//前缀和求改完后的商品数目数组for (int i = 1; i <= n; i ++ ) a[i] = a[i - 1] + diff[i];for (int i = 1; i <= m; i ++ ){//如果该操作l到r之间存在商品数目为1的则记录上int ans = 0;for (int idx = op[i].l; idx <= op[i].r; idx ++ )if (a[idx] == 1) ans ++;cout << ans << '\n';}}signed main(){ios::sync_with_stdio(0), cin.tie(0), cout.tie(0);int t = 1;// cin >> t;while (t --) solve();return 0;}
H.回文字符串
#include <bits/stdc++.h>#define int long longusing namespace std;const int N = 1e6 + 10;//桶,tt记录每个字母出现了几次,下标是相对于字符a的位置int tt[27];//记录除去了尾部的l、q、b字符后的子串char s1[N];//检查一下原始字符串是否是回文字符串bool check(string s){int l = 0, r = s.length() - 1;while (l < r){//如果对应位置不相同就可以直接返回false了if (s[l] != s[r]) return false;l ++, r --;}return true;}//别问我为啥要写两份相似的check函数,因为写这题写一半忘了怎么写string插入了bool check1(int len){int l = 0, r = len;while (l < r){if (s1[l] != s1[r]) return false;l ++, r --;}return true;}void solve(){string s; cin >> s;//遍历原始字符串,记录字母个数for (int i = 0; i < s.length(); i ++ ) tt[s[i] - 'a'] ++;//如果原始字符串是回文字符串或者l、q、b的字母数目和为原始串总长度,那就能变成回文字符串if (check(s) || tt['l' - 'a'] + tt['q' - 'a'] + tt['b' - 'a'] == s.length()){cout << "Yes\n";return;}//从后往前遍历,排除掉l、q、b//lqbl代表的是排除掉l、q、b之后的那个字符的下标int lqbl = s.length() - 1;for (; lqbl >= 0; lqbl -- )if (s[lqbl] != 'l' && s[lqbl] != 'q' && s[lqbl] != 'b') break;//把前面的子串存到s1内for (int i = lqbl; i >= 0; i -- ) s1[i] = s[i];//检查一下s1是否是回文字串if (check1(lqbl)) cout << "Yes\n";else cout << "No\n";}signed main(){ios::sync_with_stdio(0), cin.tie(0), cout.tie(0);int t = 1;cin >> t;while (t --) solve();return 0;}
三、参赛感想
总体感觉相较去年难度下来了,需要用到的算法不多(也许是需要用到的算法我不会),希望今年能进国赛吧,去年本蒟蒻只拿了省二(悲),说来奇怪,去年山东省大学C组省一比省二多,不知道今年什么情况呢。山东省内参加蓝桥杯的职业院校还是太少了,每所院校内参加的专科同学更是少之又少,说实话挺可惜的,明明稍微学学就能拿个省奖,却不参加,或者参加也不学,难道是都去准备专升本了?也对,难怪专升本录取分数线这么高,事实上,就我个人而言,学历只是一块敲门砖,如果不是有些公司必须要求本科学历,我是不会专升本的,技术才是王道。扯远了扯远了,拉回来。
讲下今天比赛时的状态吧,昨晚不知道为什么又失眠了,到凌晨2点才睡着,早上7点就醒了,又补了半个小时才稍微好点,提前到考点后吃了块面包,然后开始背一些算法板子,比如dfs、bfs、树状数组,结果都没用上(好吧,也许是我不会用)。
到了开始时,状态意外的好,一点不困,先花10分钟通读8道题,第一遍读的时候感觉A和B这都是啥,咋想呀,一看C题,一个check函数就能搞定,也想出来了奇数必定是诗意数字,偶数一部分是,一部分不是,然后先跳先看D,一看好家伙,这不是结构体排序吗?毁,我忘背怎么写自定义排序了,只能靠久远的记忆了,E一看回文就先跳,我最不擅长的就是回文一类了(当然还有很多不擅长的),F第一眼感觉需要用差分,先列入必做题,G第一遍不明白怎么做(虽然到最后也没明白就是了),H回文,跳。
回来做C和D,C手写演算那几个特殊的数字搞了10分钟,然后再写又是15分钟,D题首先是想写cmp函数的,结果没写对就改用结构体重载<了,然后幸亏把0到9都试了一遍,发现0没判断,然后赶紧加上了,虚惊一场。
又回来看来一眼B,一滑到底,嗯,2000行,不多,直接上excel吧,数了15分钟,算出来是9,然后再看一遍A,求边长,给2*2的和1*1的,可以不可以全部转化成1*1的?然后python大法,*4再加上1*1的,再sqrt一下,搞定。
此时我记得已经10点半了,然后把EFGH又看了一遍,最终还是决定先写E,E那个怎么绑定两个同时加想了好久,最终想出个凑合的做法。感觉FGH出不来的我就直接输出样例,看能不能给点分,然后仔细看F,发现没什么优化的好方法(我不会),就放弃了,打暴力吧,总比只输出样例强。G就先放放,又仔细看完H后总结出了那三条,开始搞,没想到搞出来了,这时已经12点半左右了,就记了下题和代码的主要部分。
12点出来后,不出意外的都在讨论B组题目,而我只能把B组题看一遍之后才能参与到他们的讨论中,我感到一阵的孤独,希望之后能取得个不错的成绩吧。中午吃饭时不知道为什么没有食欲,饿但吃不下去,有点反胃。
这篇文章从2点30开始写,晚上8点写完,之后会把它完善成题解的,出了成绩后也会把感想补充完整。