最近笔者在备战蓝桥杯时发现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 1709446139591
r v 1709446140286
j m 1709446140346
q a 1709446141746
f j 1709446142395
a a 1709446143361
o o 1709446143846
k n 1709446143890
b b 1709446144140
d w 1709446145280
d d 1709446146147
k m 1709446146307
l l 1709446146414
x x 1709446147055
l i 1709446148307
w w 1709446148567
j j 1709446148973
v v 1709446150215
z f 1709446151637
b p 1709446152316
w p 1709446152444
l t 1709446152512
x x 1709446153577
q q 1709446153816
x q 1709446155011
g g 1709446155765
j q 1709446156799
w y 1709446157600
b m 1709446158100
r p 1709446159476
r z 1709446160064
c c 1709446160867
q q 1709446161134
y b 1709446162525
h w 1709446162613
h l 1709446163098
o o 1709446163570
y t 1709446164011
g k 1709446164332
y y 1709446165404
t t 1709446165641
r r 1709446165740
o o 1709446166696
a c 1709446167026
w w 1709446167589
f z 1709446168046
p p 1709446169051
g g 1709446169103
c i 1709446169863
o o 1709446170135
j j 1709446171441
t b 1709446171668
w o 1709446171975
e e 1709446172063
v l 1709446173504
y y 1709446174160
h h 1709446174421
a a 1709446175358
g g 1709446176638
a a 1709446176976
j j 1709446177112
l l 1709446177731
e s 1709446178431
r r 1709446178625
w w 1709446179098
k k 1709446179977
h h 1709446181411
r r 1709446182401
w w 1709446183666
a w 1709446184514
z z 1709446185785
q x 1709446187274
k k 1709446188327
d d 1709446188743
e s 1709446190199
f f 1709446190615
s s 1709446191296
l o 1709446192034
r w 1709446192449
c c 1709446192896
y c 1709446193808
h h 1709446195047
s s 1709446195448
v v 1709446195918
g g 1709446196344
s e 1709446196803
f f 1709446197586
t t 1709446197914
c c 1709446198482
j r 1709446199066
o o 1709446199427
h p 1709446200156
o y 1709446201262
p e 1709446202002
b b 1709446203132
s k 1709446203479
n n 1709446203766
i i 1709446204089
z z 1709446204586
k k 1709446205632
e z 1709446205840
b i 1709446205850
c d 1709446206103
k k 1709446206849
c c 1709446208074
e n 1709446209533
s l 1709446210733
i i 1709446212173
a e 1709446213575
y q 1709446214434
w w 1709446215796
z r 1709446216336
d t 1709446216463
h h 1709446216989
m e 1709446217212
b b 1709446217883
t t 1709446218826
u i 1709446219325
q q 1709446220702
z z 1709446221917
h h 1709446222510
g g 1709446223190
h h 1709446224145
l l 1709446224758
d f 1709446225011
i w 1709446225954
u u 1709446226829
p p 1709446228312
s k 1709446229012
e e 1709446229852
p p 1709446230133
p p 1709446230779
n n 1709446230839
e t 1709446231979
i i 1709446233124
m m 1709446233297
i t 1709446234269
l q 1709446235604
p p 1709446236154
a x 1709446237148
r r 1709446238180
z i 1709446238638
p m 1709446239678
s i 1709446240785
x k 1709446241994
u c 1709446243318
p p 1709446243613
s d 1709446244280
o k 1709446244957
i g 1709446245241
q q 1709446245902
y y 1709446246752
g f 1709446247893
g g 1709446249345
a a 1709446249502
s s 1709446249775
c c 1709446250224
w w 1709446250693
d d 1709446251516
g l 1709446252448
m m 1709446253209
w w 1709446253326
s s 1709446254354
i i 1709446255631
s o 1709446255701
v d 1709446256951
a k 1709446258080
b p 1709446258595
k k 1709446259494
m m 1709446260202
r v 1709446260918
e z 1709446261458
g s 1709446262859
y j 1709446263114
e e 1709446263262
s r 1709446264429
w w 1709446264605
x x 1709446264709
v g 1709446265340
x x 1709446266389
e e 1709446266496
i i 1709446267562
y y 1709446269005
p b 1709446270107
g g 1709446270911
s s 1709446272059
d b 1709446272361
u q 1709446272472
l l 1709446272698
n n 1709446273113
o m 1709446273367
a a 1709446273631
g g 1709446274758
s s 1709446274795
k k 1709446275321
j j 1709446275860
p p 1709446275901
l v 1709446276832
t t 1709446277761
h h 1709446278165
k k 1709446279500
w w 1709446280321
w w 1709446280388
g g 1709446281700
h h 1709446283111
y y 1709446283866
s d 1709446283906
f f 1709446284712
h h 1709446284959
c c 1709446285816
n c 1709446286947
e e 1709446287524
n n 1709446287709
h h 1709446288797
j p 1709446289061
h h 1709446289447
b b 1709446290622
i i 1709446290741
o d 1709446291584
k k 1709446292136
c c 1709446292555
j j 1709446293067
z z 1709446294090
g g 1709446295520
s j 1709446296682
c c 1709446297729
k l 1709446298105
f f 1709446298555
a a 1709446299405
j j 1709446299951
k a 1709446300711
x w 1709446301061
e l 1709446301426
b b 1709446302480
k r 1709446302963
p y 1709446302987
c c 1709446303500
p p 1709446304395
r r 1709446304976
c c 1709446306191
y p 1709446306468
n n 1709446307944
g g 1709446309205
m d 1709446309364
v v 1709446310516
g k 1709446311420
s s 1709446311694
n n 1709446311998
x x 1709446312612
i i 1709446313601
o l 1709446314524
w g 1709446315967
c c 1709446316649
t t 1709446318114
p i 1709446319049
g g 1709446320533
h b 1709446322004
v v 1709446323010
h e 1709446323985
u q 1709446324017
k k 1709446324307
t r 1709446324628
r r 1709446325148
c c 1709446325973
o r 1709446326231
p k 1709446326818
i i 1709446327642
a a 1709446328092
o o 1709446328499
x x 1709446329759
i i 1709446331256
m m 1709446332321
l l 1709446332415
p n 1709446332626
x x 1709446333544
z z 1709446334219
y u 1709446335524
f u 1709446335936
w w 1709446336167
n n 1709446336731
t t 1709446336785
c c 1709446338141
p p 1709446339572
u w 1709446339956
x x 1709446340671
w w 1709446341783
y x 1709446342435
n n 1709446342958
i i 1709446344202
k a 1709446344884
k t 1709446345989
c l 1709446347238
r r 1709446347315
y y 1709446348493
r l 1709446348705
a t 1709446350038
x b 1709446351238
x f 1709446352495
t t 1709446352657
p p 1709446353197
l l 1709446353464
a a 1709446353790
t u 1709446354706
m m 1709446355669
r z 1709446356319
j j 1709446356524
r r 1709446357516
o f 1709446357908
m y 1709446358892
a w 1709446359886
d d 1709446359927
l l 1709446360143
u k 1709446361153
z z 1709446362016
x x 1709446362605
t t 1709446362959
h h 1709446363014
f f 1709446363092
z z 1709446363610
o o 1709446364725
d x 1709446365249
d u 1709446365762
o y 1709446366747
x x 1709446368101
t t 1709446369500
i i 1709446370270
x x 1709446370329
g w 1709446370797
w w 1709446371797
j e 1709446372522
l g 1709446373544
a k 1709446374201
b h 1709446374374
f l 1709446375245
e e 1709446376541
x x 1709446377816
e e 1709446379066
l m 1709446379125
n n 1709446379671
t h 1709446380094
m m 1709446380246
q q 1709446380956
f f 1709446381548
x x 1709446381643
m m 1709446381809
u u 1709446383203
f f 1709446383566
c c 1709446384913
b b 1709446385340
k e 1709446386556
k k 1709446387407
s s 1709446388170
t t 1709446388191
d a 1709446389545
z h 1709446389906
z z 1709446390678
n n 1709446391776
l l 1709446391829
z z 1709446392889
y r 1709446393132
q r 1709446394018
n n 1709446394385
p p 1709446395223
f f 1709446395503
i g 1709446396801
s s 1709446396971
r r 1709446398087
e e 1709446398382
n o 1709446398423
s s 1709446399436
x x 1709446399984
m m 1709446400431
v v 1709446401468
t t 1709446402637
b b 1709446403843
d f 1709446404170
n n 1709446404679
m m 1709446405241
q l 1709446406691
u u 1709446407850
p p 1709446408844
m f 1709446409659
w w 1709446410057
f a 1709446410666
x x 1709446411642
c f 1709446412143
f f 1709446412939
g g 1709446414196
v v 1709446415621
k z 1709446416888
e e 1709446418134
w w 1709446418551
i i 1709446419877
e e 1709446420846
z w 1709446421347
k k 1709446421668
o o 1709446422865
b y 1709446424360
m m 1709446425172
k p 1709446425808
a a 1709446426597
w w 1709446426777
s k 1709446427775
d d 1709446428678
n n 1709446429493
z z 1709446430150
i i 1709446431322
h d 1709446432166
u u 1709446432453
t i 1709446433171
z z 1709446434463
y y 1709446435095
c n 1709446435275
z p 1709446436552
g g 1709446437365
q f 1709446437777
c c 1709446438199
c c 1709446438310
n y 1709446439789
w a 1709446441244
l l 1709446442169
t t 1709446442575
o g 1709446443116
w w 1709446443602
d d 1709446444105
r r 1709446445254
g g 1709446445425
b b 1709446445859
v v 1709446446023
z z 1709446447159
t t 1709446448367
v v 1709446449684
l l 1709446450633
u u 1709446451451
s p 1709446452383
b b 1709446453688
y g 1709446454720
v a 1709446455136
e e 1709446456456
m m 1709446456796
a a 1709446457168
z g 1709446458466
l l 1709446459955
p p 1709446460927
w w 1709446461347
r r 1709446462679
u u 1709446463801
m u 1709446464251
g g 1709446465269
r r 1709446466677
q q 1709446467124
b b 1709446467580
k x 1709446468996
p p 1709446469001
a a 1709446469824
q r 1709446470893
f f 1709446471894
l t 1709446472264
w h 1709446473498
c c 1709446473833
b b 1709446475167
e e 1709446475953
w w 1709446477010
t f 1709446477415
h l 1709446477781
y y 1709446478826
x x 1709446479048
z z 1709446479311
g o 1709446480664
o o 1709446481799
j v 1709446483194
o o 1709446484484
k k 1709446485223
r q 1709446486379
x x 1709446486917
w w 1709446488240
u u 1709446489092
d o 1709446490280
m b 1709446491276
e s 1709446491694
b u 1709446493078
i i 1709446493131
b w 1709446494117
j j 1709446494546
o t 1709446495436
c c 1709446495623
z i 1709446496584
j j 1709446496819
w w 1709446497413
d e 1709446498898
g u 1709446499779
v v 1709446501255
c c 1709446501274
c x 1709446502173
c c 1709446502272
g e 1709446502800
t x 1709446504006
a f 1709446504627
h h 1709446505144
d d 1709446506147
h s 1709446506897
h h 1709446506936
t t 1709446507793
k k 1709446509037
i i 1709446509910
u u 1709446511035
e e 1709446511633
u u 1709446511709
g c 1709446511771
s s 1709446512716
j p 1709446514208
y y 1709446514876
f f 1709446515582
q q 1709446516718
h n 1709446517015
w j 1709446517569
z z 1709446518619
r r 1709446519492
q c 1709446520772
c v 1709446521322
p p 1709446522145
r r 1709446522428
k k 1709446523110
d t 1709446523987
q e 1709446525332
e e 1709446526089
t s 1709446526694
i i 1709446527801
y y 1709446528944
j j 1709446529437
k k 1709446530589
x x 1709446530609
e e 1709446531057
b h 1709446532276
p q 1709446533084
y y 1709446533802
i i 1709446534349
e s 1709446534614
e y 1709446536063
u l 1709446537103
u v 1709446538295
n n 1709446538779
c c 1709446539562
f k 1709446540755
i x 1709446541670
b t 1709446541908
q q 1709446542877
h h 1709446544197
h d 1709446545151
c e 1709446545494
k a 1709446546021
q q 1709446547117
x x 1709446547328
q q 1709446548281
k k 1709446549254
g c 1709446549410
j j 1709446550797
n n 1709446551963
u u 1709446552124
z z 1709446552429
n n 1709446552958
r r 1709446554164
u u 1709446555353
b b 1709446556198
h n 1709446557081
x x 1709446558281
j x 1709446559775
k k 1709446561151
l a 1709446561250
a j 1709446562534
g g 1709446562629
o o 1709446563099
u s 1709446564067
f f 1709446564315
w k 1709446565452
h h 1709446566760
v v 1709446566762
f f 1709446567605
j j 1709446568278
f c 1709446569146
t t 1709446569205
n u 1709446570503
j j 1709446571150
b m 1709446572525
o t 1709446573670
v v 1709446574126
o z 1709446575298
s h 1709446575594
d d 1709446576650
q q 1709446577220
d d 1709446577644
c c 1709446577935
e t 1709446578817
v d 1709446579496
f f 1709446579738
j v 1709446580094
u l 1709446580710
n n 1709446581840
h v 1709446582999
m z 1709446583897
q q 1709446585001
m i 1709446585402
b b 1709446586202
o x 1709446586773
k k 1709446587772
b b 1709446588142
u u 1709446589633
d d 1709446590331
r r 1709446591662
v v 1709446592989
k k 1709446593504
z w 1709446594570
g g 1709446594629
w s 1709446595875
t q 1709446596821
b t 1709446597278
k k 1709446598021
i l 1709446599232
g g 1709446599704
k k 1709446601012
t t 1709446601986
r r 1709446602915
h g 1709446602955
a a 1709446603692
d d 1709446604026
k k 1709446604714
l l 1709446605100
j j 1709446605666
y i 1709446605671
t t 1709446606134
q q 1709446607569
m y 1709446607902
f j 1709446607928
z z 1709446608736
s k 1709446609051
h h 1709446610112
x z 1709446610612
k k 1709446611993
n y 1709446612280
s s 1709446613236
r r 1709446614576
z z 1709446614940
v z 1709446616305
j j 1709446617604
l n 1709446618128
j j 1709446618714
g s 1709446620107
k k 1709446621369
z j 1709446622060
j j 1709446622918
e e 1709446624128
o o 1709446625063
e e 1709446625577
e v 1709446626688
o g 1709446626921
j s 1709446627033
o o 1709446627206
n m 1709446628173
o o 1709446629413
v o 1709446629552
z z 1709446630130
y y 1709446630375
d d 1709446631278
m m 1709446632698
q q 1709446632809
p i 1709446634016
j j 1709446634593
p p 1709446635476
f f 1709446635823
s s 1709446637171
g j 1709446638034
b b 1709446639398
f n 1709446639590
y y 1709446640056
v k 1709446640365
i i 1709446640783
y y 1709446641524
q a 1709446642897
n n 1709446644289
x x 1709446645426
t t 1709446645977
z z 1709446646040
h f 1709446646208
j w 1709446646428
e e 1709446647727
e e 1709446648025
d d 1709446648283
v o 1709446649099
d d 1709446649312
s x 1709446649592
a a 1709446650292
l k 1709446650618
f f 1709446651376
y y 1709446652873
m f 1709446654096
l k 1709446654823
m m 1709446655058
r l 1709446655839
e e 1709446657065
s i 1709446657251
h d 1709446658292
a c 1709446658403
x x 1709446659705
z z 1709446659915
b b 1709446660142
x x 1709446660664
e l 1709446662113
c k 1709446662527
e e 1709446663658
r r 1709446664973
b b 1709446665776
k k 1709446666467
k k 1709446667782
p p 1709446668660
f f 1709446669016
n n 1709446669763
m m 1709446670591
t t 1709446671490
r y 1709446672795
g g 1709446674032
a a 1709446675411
k w 1709446676111
x k 1709446676991
q i 1709446677880
s j 1709446678031
f f 1709446678643
w d 1709446679497
h h 1709446679865
e e 1709446680567
r v 1709446681089
f f 1709446682545
p b 1709446683549
u b 1709446683917
f f 1709446684328
o o 1709446684504
w w 1709446684686
s h 1709446685579
c k 1709446686421
p e 1709446687547
y y 1709446687750
i i 1709446688064
v m 1709446688919
p p 1709446689923
g g 1709446690944
y y 1709446691173
u u 1709446691705
v v 1709446693048
d d 1709446694360
u u 1709446694893
r r 1709446695166
z z 1709446696394
w w 1709446697600
a a 1709446697865
j j 1709446697969
s s 1709446698017
k b 1709446698518
n n 1709446698815
a a 1709446699368
o i 1709446700300
x j 1709446700809
u u 1709446702187
x x 1709446703151
w w 1709446703663
x x 1709446704672
j j 1709446705963
o o 1709446707016
t t 1709446707479
c v 1709446708413
t n 1709446708976
d e 1709446709635
b b 1709446710305
u x 1709446711346
b g 1709446711813
r z 1709446712763
l l 1709446713561
p p 1709446713788
m m 1709446714077
c t 1709446714424
b b 1709446715635
o o 1709446716020
u p 1709446716452
n e 1709446716882
f j 1709446717253
i i 1709446718272
o c 1709446719494
j j 1709446720068
k k 1709446721053
t t 1709446721295
t f 1709446722678
n y 1709446723250
p h 1709446724674
i v 1709446724710
o o 1709446725671
k j 1709446726373
f g 1709446727423
d d 1709446727533
v d 1709446727635
l p 1709446727857
q i 1709446728655
s h 1709446728926
c c 1709446730065
o m 1709446730573
u u 1709446731359
e e 1709446732858
s s 1709446734159
j j 1709446734965
m e 1709446736386
y u 1709446736927
l l 1709446738037
x x 1709446738789
d d 1709446740247
r r 1709446741166
a a 1709446742014
f f 1709446742412
o y 1709446743373
t t 1709446744333
h a 1709446745395
w w 1709446746429
h h 1709446747241
h h 1709446747996
m m 1709446749136
q q 1709446750298
k d 1709446751095
u k 1709446752179
g g 1709446752685
x z 1709446752687
y q 1709446752716
j m 1709446753481
w b 1709446753766
c w 1709446754262
t t 1709446754989
t t 1709446755808
d d 1709446757243
r r 1709446757564
i i 1709446758766
m m 1709446759852
u u 1709446760948
v v 1709446761152
p p 1709446761534
y y 1709446761613
o o 1709446761673
d h 1709446762029
n n 1709446762064
n k 1709446763546
f p 1709446764110
o k 1709446765343
b m 1709446766694
i n 1709446768169
v v 1709446769151
a a 1709446769844
r r 1709446770230
a d 1709446771406
r r 1709446772239
e e 1709446773716
p p 1709446774088
b k 1709446774374
f f 1709446775654
a a 1709446776967
x x 1709446777327
o o 1709446778690
d d 1709446778738
u p 1709446779946
m k 1709446780589
u u 1709446781548
j j 1709446782699
d d 1709446783371
t t 1709446783608
h h 1709446784630
u u 1709446785527
q q 1709446786759
y y 1709446787026
z z 1709446787734
h h 1709446788265
h h 1709446788861
n n 1709446789174
d d 1709446789506
i i 1709446789810
d j 1709446791308
w a 1709446791393
x x 1709446792188
v a 1709446793390
p p 1709446794665
m m 1709446795957
h h 1709446796167
q f 1709446797276
d d 1709446797422
v v 1709446798152
i f 1709446799191
r n 1709446799287
y y 1709446800022
z x 1709446801119
n j 1709446801889
a a 1709446802767
f f 1709446804053
p p 1709446804677
y y 1709446805785
x x 1709446807073
z n 1709446807305
u t 1709446808762
o o 1709446810113
x x 1709446811220
y y 1709446811991
d y 1709446812145
r g 1709446812409
s s 1709446813262
b b 1709446813667
z z 1709446814485
a a 1709446815344
s i 1709446816819
o o 1709446816865
w x 1709446817929
i x 1709446818701
y y 1709446819440
u u 1709446820489
t r 1709446821779
c c 1709446821930
a h 1709446822817
l l 1709446822891
v x 1709446823298
z g 1709446824615
f f 1709446825414
d d 1709446826127
a a 1709446826741
u u 1709446827178
f n 1709446827905
b b 1709446828888
b f 1709446829290
f f 1709446830392
e g 1709446830674
o o 1709446831624
i i 1709446831706
w c 1709446832256
u u 1709446833418
e e 1709446834565
v n 1709446835747
w f 1709446836243
o x 1709446837367
c l 1709446837996
b b 1709446838439
v v 1709446839002
s s 1709446839628
b u 1709446840438
d d 1709446840625
j j 1709446842092
r r 1709446842815
f f 1709446843958
j n 1709446844975
a a 1709446845465
l i 1709446846259
h h 1709446847669
j j 1709446848504
u c 1709446848566
n n 1709446849029
z z 1709446849749
b b 1709446850228
c c 1709446850317
c c 1709446851005
s s 1709446851660
m v 1709446851691
f f 1709446852386
z z 1709446852968
k k 1709446853212
y y 1709446854387
t t 1709446855388
f i 1709446856111
w k 1709446856550
i i 1709446857151
u u 1709446857516
j j 1709446857628
o o 1709446858651
e v 1709446859249
r d 1709446860725
t t 1709446861357
l l 1709446861818
c e 1709446862862
h h 1709446863468
p p 1709446864498
r r 1709446865156
q h 1709446866346
i i 1709446866708
g b 1709446866954
x d 1709446868202
q q 1709446869670
v v 1709446870245
h h 1709446870697
e e 1709446871962
r r 1709446872640
w w 1709446874040
m m 1709446874788
w w 1709446875215
k k 1709446876700
y y 1709446876770
k g 1709446876783
d d 1709446877432
h h 1709446877593
y i 1709446877668
t t 1709446878884
o o 1709446879094
s s 1709446879393
u n 1709446880448
i y 1709446880677
e e 1709446881377
u u 1709446881983
w q 1709446882800
u f 1709446883397
h h 1709446883729
y k 1709446884070
o q 1709446885092
o o 1709446885393
b b 1709446886851
n u 1709446888188
l l 1709446888550
r x 1709446889083
u u 1709446889984
q a 1709446890814
w w 1709446891362
v v 1709446891705
x g 1709446892570
w d 1709446892775
s d 1709446893246
q q 1709446894161
q h 1709446894739
b o 1709446896017
i i 1709446896715
t t 1709446897259
s w 1709446897927
a y 1709446899119
d d 1709446899942
i h 1709446900511
e k 1709446900725
f f 1709446901213
z z 1709446901993
n n 1709446903285
y y 1709446904553
k k 1709446905446
c c 1709446906343
m u 1709446907092
t t 1709446908129
b l 1709446909598
e e 1709446910215
q q 1709446910503
e e 1709446911800
n f 1709446912721
s s 1709446913865
i q 1709446914176
f f 1709446915200
b c 1709446915451
b b 1709446916538
w w 1709446916821
z w 1709446917472
k k 1709446918629
f f 1709446919409
x o 1709446920853
r n 1709446922216
q q 1709446922988
o o 1709446923304
p p 1709446924088
r r 1709446925157
y y 1709446925414
i i 1709446925745
d j 1709446925877
b b 1709446927185
p l 1709446927548
t t 1709446928682
x s 1709446928773
m m 1709446929050
f f 1709446929193
g g 1709446929201
g r 1709446929573
c s 1709446929738
w d 1709446930255
k b 1709446930991
x n 1709446932406
r r 1709446933373
x r 1709446934186
b b 1709446935180
q q 1709446936550
e e 1709446936782
k k 1709446938197
i t 1709446938302
r r 1709446939112
b b 1709446939436
c m 1709446939857
s b 1709446940926
e b 1709446941222
r r 1709446942250
y y 1709446942278
m m 1709446942752
u u 1709446943542
w w 1709446944531
n n 1709446945114
m u 1709446945224
l w 1709446945308
e e 1709446945423
w s 1709446945842
a y 1709446946542
x m 1709446946953
y y 1709446947951
y y 1709446948441
n n 1709446949008
w w 1709446949553
p p 1709446950722
e e 1709446951939
h h 1709446952095
o o 1709446953561
o o 1709446954010
z v 1709446954426
q t 1709446954426
g g 1709446954520
u a 1709446955766
q r 1709446957080
o o 1709446957125
k k 1709446957481
l l 1709446958924
c c 1709446959671
l l 1709446960963
o o 1709446961023
e b 1709446962417
m l 1709446963019
f f 1709446963245
y y 1709446964103
w w 1709446964681
y u 1709446964841
i a 1709446965852
b o 1709446966923
o o 1709446968312
l l 1709446969262
p k 1709446969803
u u 1709446970430
s s 1709446970727
k k 1709446971547
n n 1709446972258
a a 1709446973522
q v 1709446974998
b b 1709446976406
c c 1709446977413
h m 1709446978522
a a 1709446978929
u u 1709446980375
d f 1709446981642
w w 1709446983044
v f 1709446983819
z z 1709446984833
l q 1709446985180
p k 1709446985292
r r 1709446986316
f n 1709446987422
o o 1709446988486
n l 1709446989923
f o 1709446990300
c t 1709446991150
y y 1709446992271
h z 1709446993295
f f 1709446993478
f n 1709446993892
y d 1709446995333
w w 1709446995374
s u 1709446996126
o t 1709446997579
r s 1709446997982
l l 1709446998903
w w 1709446999640
c c 1709446999935
h h 1709447000116
t t 1709447000203
f z 1709447001371
s s 1709447001945
w y 1709447002636
b b 1709447002755
n n 1709447004082
m l 1709447005395
b r 1709447005955
w o 1709447007243
o o 1709447008088
w w 1709447009458
n n 1709447010090
n n 1709447010194
o o 1709447010692
y y 1709447010868
k k 1709447011260
w w 1709447011577
i i 1709447011604
y y 1709447011782
q p 1709447012742
d d 1709447012850
s s 1709447014283
c c 1709447014784
w w 1709447015835
a a 1709447017062
s h 1709447017871
d f 1709447018375
n n 1709447019042
t t 1709447019858
u y 1709447020351
v f 1709447021599
y y 1709447022236
u u 1709447022355
q h 1709447023001
y y 1709447023312
p y 1709447024529
z s 1709447024677
a a 1709447024719
r z 1709447025746
i w 1709447025994
q q 1709447026236
g r 1709447026992
m q 1709447028157
u u 1709447028750
x x 1709447030245
c c 1709447031147
e e 1709447031260
w w 1709447032626
c h 1709447033632
a j 1709447033776
b b 1709447034797
t d 1709447036062
t t 1709447037321
r l 1709447038774
u u 1709447040034
t t 1709447041421
x x 1709447042382
j g 1709447043040
n n 1709447044130
o j 1709447045497
q q 1709447046393
z u 1709447047560
f l 1709447048501
i y 1709447048817
p p 1709447049165
u e 1709447050594
l k 1709447051109
n t 1709447051812
a h 1709447052339
o o 1709447052877
f f 1709447053467
t t 1709447053932
b x 1709447054172
h h 1709447055517
m e 1709447055647
o f 1709447057112
h g 1709447057694
x b 1709447058281
x x 1709447058311
f f 1709447059469
y o 1709447060869
c c 1709447061333
v v 1709447062372
u g 1709447063231
d d 1709447063876
c k 1709447065281
k z 1709447066549
y k 1709447067454
m m 1709447068699
s s 1709447069735
y y 1709447069898
y a 1709447070632
q q 1709447071726
g k 1709447072483
x x 1709447073534
i v 1709447074002
x z 1709447074848
x w 1709447074990
q v 1709447075750
f f 1709447076117
v v 1709447076596
r r 1709447077809
r x 1709447078914
n e 1709447079294
y y 1709447079690
y b 1709447079878
u u 1709447080074
g g 1709447080267
y y 1709447081723
x d 1709447082217
p p 1709447082263
h h 1709447083368
i i 1709447084336
s s 1709447084372
a a 1709447085361
b s 1709447085717
p p 1709447086045
u u 1709447086745
a a 1709447087866
e p 1709447087894
w w 1709447088192
b a 1709447089473
p y 1709447090745
x x 1709447091700
g u 1709447092032
o b 1709447092541
d d 1709447092722
s y 1709447092847
w w 1709447093179
k k 1709447094140
d e 1709447094246
d t 1709447095061
t t 1709447095114
b b 1709447095632
y q 1709447096672
j j 1709447097201
k i 1709447097750
f f 1709447098436
b b 1709447098919
q q 1709447099525
g k 1709447100901
a x 1709447102212
i i 1709447102929
v v 1709447104317
p z 1709447104356
n m 1709447104519
f f 1709447104534
r r 1709447104720
x x 1709447105148
i i 1709447106455
s s 1709447106685
d d 1709447108164
i i 1709447109044
g g 1709447109633
w w 1709447109737
q j 1709447111125
c l 1709447111633
q q 1709447111944
m o 1709447112629
f f 1709447112914
z z 1709447114305
x x 1709447115109
j j 1709447116435
h h 1709447117633
u u 1709447118471
i i 1709447118963
g g 1709447119509
s s 1709447119850
b b 1709447120996
s s 1709447122284
y a 1709447122831
i i 1709447123477
q q 1709447124085
f f 1709447124959
g g 1709447125342
u m 1709447126754
p p 1709447127573
o o 1709447128465
x o 1709447128567
a a 1709447128920
y c 1709447130416
n h 1709447130699
v x 1709447131605
s w 1709447132228
h d 1709447133585
o o 1709447133886
d d 1709447134473
k k 1709447135795
y b 1709447136721
b b 1709447137485
j j 1709447138312
z z 1709447139369
z z 1709447140362
d p 1709447141724
y y 1709447143219
l w 1709447144476
s s 1709447145316
x x 1709447146449
m q 1709447147241
i i 1709447148027
i x 1709447148401
k k 1709447148676
a a 1709447149177
e e 1709447149311
w w 1709447149840
b b 1709447150315
a o 1709447151299
r r 1709447152119
x x 1709447153014
o o 1709447153433
e e 1709447154579
b b 1709447155897
o o 1709447156795
t t 1709447157567
g g 1709447157816
d y 1709447158829
c c 1709447159405
g h 1709447160300
k z 1709447161285
p a 1709447161805
j j 1709447162935
o o 1709447164325
c c 1709447164508
j j 1709447165505
l l 1709447166960
u n 1709447167070
y y 1709447167804
g g 1709447168616
x w 1709447169453
k k 1709447170889
g g 1709447172163
q q 1709447173259
r r 1709447173763
c d 1709447173894
l l 1709447174868
s s 1709447176078
y y 1709447176393
t m 1709447177237
g v 1709447178240
c c 1709447178727
j s 1709447179598
o o 1709447180251
o a 1709447181209
k k 1709447181721
r h 1709447182735
q q 1709447183044
u c 1709447183082
z o 1709447183442
e e 1709447184172
z a 1709447184335
g g 1709447184881
c u 1709447185160
o o 1709447185252
d l 1709447186486
w w 1709447186858
p p 1709447187188
o o 1709447188609
s k 1709447188674
m m 1709447189682
f w 1709447190024
f w 1709447190431
y y 1709447191017
u u 1709447192495
v v 1709447193545
c t 1709447194759
r d 1709447195468
j a 1709447195582
b b 1709447195984
x x 1709447197399
i i 1709447198252
d d 1709447198543
z d 1709447199770
s s 1709447200125
c c 1709447201260
y n 1709447202730
m i 1709447204046
n t 1709447204402
l l 1709447205550
c z 1709447205574
c z 1709447206431
x x 1709447206793
d d 1709447208212
i i 1709447208371
u u 1709447209283
d c 1709447210218
o a 1709447210782
q s 1709447211531
o e 1709447212119
z z 1709447212953
z z 1709447213674
r r 1709447214858
w z 1709447216279
f f 1709447216519
m f 1709447217701
x y 1709447218064
m m 1709447219274
j m 1709447219611
s s 1709447220947
n n 1709447221547
v v 1709447222222
p p 1709447222916
h h 1709447224111
f b 1709447224562
m s 1709447225572
d j 1709447226506
i i 1709447227302
v v 1709447227941
a a 1709447228495
b u 1709447228696
h h 1709447228946
l g 1709447228973
q q 1709447230144
j j 1709447230897
p y 1709447231235
v m 1709447231478
u u 1709447232444
k k 1709447232445
d d 1709447233726
p p 1709447233736
r g 1709447234466
v v 1709447235092
b b 1709447235905
j j 1709447236625
a a 1709447237304
z m 1709447238596
a l 1709447238926
f i 1709447239196
q q 1709447239443
p p 1709447239622
x x 1709447239879
d d 1709447240507
j c 1709447241513
t l 1709447242815
c c 1709447244047
d d 1709447244924
i i 1709447246401
a a 1709447247195
r r 1709447248162
t t 1709447248610
z z 1709447248936
t t 1709447249847
p p 1709447250012
l g 1709447250220
n n 1709447251372
f f 1709447252053
r t 1709447252913
k k 1709447254246
a b 1709447254386
p p 1709447255257
z z 1709447256675
w v 1709447256920
l v 1709447257229
y y 1709447257789
j j 1709447258176
u r 1709447258973
c c 1709447260165
v v 1709447260906
y d 1709447261185
c c 1709447262089
m m 1709447262748
l i 1709447263114
f f 1709447264254
o o 1709447265379
p p 1709447266260
n n 1709447266309
f j 1709447267456
i i 1709447267627
f r 1709447268417
u u 1709447268626
y y 1709447269098
r w 1709447269728
d o 1709447270377
g m 1709447270432
p p 1709447271334
d l 1709447271503
n n 1709447271554
h h 1709447272609
z j 1709447273223
y v 1709447273612
q q 1709447273725
l l 1709447274303
q q 1709447275766
q q 1709447275910
x x 1709447276696
h w 1709447277443
n n 1709447278505
p p 1709447279296
u u 1709447280147
n j 1709447280566
i i 1709447281325
b b 1709447282260
s x 1709447282289
s s 1709447282430
r r 1709447283593
n h 1709447284115
p p 1709447284843
k k 1709447285359
s b 1709447286239
o m 1709447287313
b c 1709447287842
q q 1709447288004
q g 1709447289192
g g 1709447290004
b b 1709447290977
g n 1709447292071
y c 1709447292339
p p 1709447293487
g g 1709447294322
b b 1709447295579
p p 1709447296189
h t 1709447297278
p k 1709447297771
e e 1709447298174
f w 1709447299042
y a 1709447300063
q q 1709447301538
n n 1709447301913
d k 1709447301915
x x 1709447301983
k t 1709447303235
q d 1709447303852
s s 1709447305072
p p 1709447306223
d d 1709447306260
l l 1709447306339
s b 1709447306432
j j 1709447307195
y y 1709447308078
x x 1709447308678
s s 1709447309383
g j 1709447310306
m k 1709447311255
p n 1709447311588
f w 1709447311740
o m 1709447312879
o o 1709447313928
m m 1709447315426
y y 1709447316806
h h 1709447317076
d q 1709447318389
t r 1709447318486
f b 1709447319464
m v 1709447319952
a n 1709447321293
n i 1709447322350
m m 1709447322554
o q 1709447323812
f f 1709447324447
l l 1709447324464
h h 1709447325117
x x 1709447326184
i i 1709447326708
h h 1709447326789
i i 1709447327661
j n 1709447329144
s s 1709447329485
e n 1709447330836
t t 1709447330929
r r 1709447331353
r r 1709447332083
x x 1709447332846
a a 1709447333412
g g 1709447333574
p f 1709447334046
x v 1709447334413
d d 1709447334979
c c 1709447335806
c c 1709447335876
n e 1709447336920
m m 1709447338125
r r 1709447338362
z w 1709447339241
h h 1709447340110
u u 1709447341290
e e 1709447341868
w w 1709447341946
o o 1709447343317
f f 1709447343916
m m 1709447344177
g g 1709447345207
e e 1709447346362
r r 1709447347427
a a 1709447347629
z l 1709447348350
k k 1709447348976
h z 1709447349826
e q 1709447350124
w w 1709447350822
o o 1709447351833
c c 1709447353300
q i 1709447353448
k k 1709447354347
l l 1709447355310
b f 1709447356544
j j 1709447357232
p p 1709447357829
v v 1709447358826
z z 1709447359201
f d 1709447359850
w g 1709447360127
l s 1709447361074
k k 1709447361468
c c 1709447362545
s s 1709447363246
q q 1709447364737
h e 1709447365228
c c 1709447366548
e e 1709447366939
c c 1709447367909
g n 1709447368604
o o 1709447369297
l l 1709447370575
s y 1709447371319
s s 1709447371924
b n 1709447372196
l p 1709447373390
x d 1709447374019
c i 1709447375143
z z 1709447376521
r m 1709447377034
x x 1709447378178
e e 1709447378490
w c 1709447379857
e s 1709447379978
e e 1709447379988
h d 1709447381108
x x 1709447381824
o q 1709447381945
k u 1709447382211
d s 1709447383131
o o 1709447383634
m m 1709447384477
o b 1709447385187
e e 1709447386445
c h 1709447386977
w e 1709447387170
p p 1709447388144
s l 1709447389629
t l 1709447390026
u g 1709447391468
w w 1709447392956
t t 1709447393001
x x 1709447394235
k y 1709447395269
q k 1709447395378
s s 1709447396203
i i 1709447396913
v o 1709447398038
u f 1709447398643
g g 1709447399570
j a 1709447400439
g g 1709447400503
o o 1709447401721
c c 1709447402217
w i 1709447403161
n n 1709447403749
i h 1709447403803
v q 1709447404375
f f 1709447404617
i r 1709447405392
h h 1709447406087
p p 1709447406573
m m 1709447406980
u u 1709447407281
n n 1709447407555
q q 1709447409054
m m 1709447409080
u u 1709447409670
t t 1709447410814
i b 1709447411318
d d 1709447412718
a y 1709447413054
o o 1709447413383
o o 1709447414410
v l 1709447414647
x x 1709447415209
q c 1709447415526
n i 1709447415796
w w 1709447416360
t t 1709447417033
n j 1709447417639
g g 1709447418886
o o 1709447420067
e g 1709447421117
b u 1709447421529
d d 1709447422312
r i 1709447423257
z c 1709447424476
x f 1709447424679
c c 1709447425037
b b 1709447425664
c c 1709447426041
b b 1709447426427
b b 1709447427812
r r 1709447428602
a q 1709447430040
r b 1709447431284
f f 1709447431698
l l 1709447433118
x x 1709447433311
n d 1709447433330
q q 1709447434756
y b 1709447435785
x x 1709447437194
a u 1709447438026
p v 1709447438469
x q 1709447439966
t t 1709447440618
h h 1709447441585
n f 1709447441595
r r 1709447441610
w w 1709447442511
g g 1709447442739
u u 1709447443550
x x 1709447444324
v v 1709447445230
v v 1709447446381
c c 1709447447213
n s 1709447447576
o o 1709447448947
t n 1709447449773
t t 1709447450042
t j 1709447451229
n n 1709447452099
j c 1709447452828
z x 1709447454097
k k 1709447455099
k k 1709447455799
v v 1709447456584
r d 1709447457266
a a 1709447457317
y y 1709447457909
n n 1709447458198
h f 1709447459690
i i 1709447460788
c h 1709447461090
f v 1709447461219
w w 1709447462348
w f 1709447462778
k x 1709447463321
x u 1709447464495
x f 1709447465088
f t 1709447465799
g g 1709447466950
r r 1709447467486
d d 1709447468181
c c 1709447469333
b b 1709447469340
g g 1709447470001
j j 1709447470478
b b 1709447471419
g s 1709447471534
x x 1709447471716
t t 1709447473008
y y 1709447473570
u s 1709447474720
p d 1709447474990
i z 1709447475018
k k 1709447475580
d d 1709447476923
i i 1709447477943
i x 1709447479076
b b 1709447479972
h k 1709447480371
q x 1709447480784
k k 1709447481986
f f 1709447483095
n n 1709447483412
u u 1709447484450
j u 1709447485550
s s 1709447486887
q q 1709447487214
h m 1709447488677
v u 1709447489001
n h 1709447490310
v v 1709447490386
c k 1709447491186
j j 1709447492474
n n 1709447493877
q q 1709447494734
g g 1709447496039
v g 1709447496058
s s 1709447496523
x s 1709447497562
u u 1709447497870
y y 1709447498048
z z 1709447499000
y a 1709447500277
f f 1709447500937
v v 1709447501227
e e 1709447502524
d k 1709447503477
o n 1709447504734
e z 1709447505899
s c 1709447506613
t t 1709447507104
l o 1709447508485
g s 1709447508769
u u 1709447509788
x a 1709447511168
y y 1709447512269
x u 1709447512823
u u 1709447514099
q q 1709447515175
u u 1709447516212
t t 1709447517406
b b 1709447518814
z z 1709447519768
y y 1709447521011
l z 1709447522339
g g 1709447523536
x e 1709447524869
u f 1709447526169
a a 1709447527076
k k 1709447527838
h h 1709447528305
p p 1709447529196
r r 1709447530297
y y 1709447531478
u r 1709447532815
b b 1709447532895
r r 1709447533238
h h 1709447534492
w w 1709447534516
i i 1709447535063
i i 1709447535089
v i 1709447535208
x x 1709447536622
r r 1709447536979
y k 1709447538019
k k 1709447538995
k k 1709447539544
r r 1709447539633
o b 1709447540538
w c 1709447541706
u u 1709447543028
e s 1709447544455
a a 1709447545576
z s 1709447545778
j v 1709447547129
p c 1709447547686
g g 1709447548564
b b 1709447549192
v v 1709447550658
o f 1709447551077
b b 1709447551903
i a 1709447552690
c c 1709447553440
i s 1709447554235
a a 1709447554368
z z 1709447555570
p p 1709447555761
p a 1709447556787
p p 1709447558266
h h 1709447559512
n n 1709447560818
h h 1709447561669
l s 1709447562909
u u 1709447563637
d d 1709447564159
t y 1709447565356
k s 1709447566057
w w 1709447567278
f z 1709447567497
e e 1709447568762
d d 1709447568884
m s 1709447569842
e e 1709447570331
w l 1709447571688
d o 1709447572317
g f 1709447572333
t c 1709447573797
y o 1709447573842
x x 1709447575210
e n 1709447576151
l l 1709447576213
s s 1709447577314
e e 1709447578163
j h 1709447579427
b b 1709447580560
y r 1709447582006
l l 1709447583318
m m 1709447583422
l l 1709447583425
u u 1709447584575
m e 1709447585848
z z 1709447586755
v v 1709447586798
n n 1709447587933
f w 1709447588100
z z 1709447588218
q w 1709447589581
y y 1709447590485
d d 1709447590590
n m 1709447590704
x x 1709447591541
r r 1709447592989
o t 1709447593624
b b 1709447594289
o l 1709447595556
x a 1709447595791
d d 1709447596153
a a 1709447597482
d d 1709447598339
m m 1709447599271
t t 1709447600621
c c 1709447601891
k k 1709447602566
u h 1709447603595
t t 1709447604010
d d 1709447605147
o r 1709447605270
a a 1709447606451
p r 1709447606773
l l 1709447608076
i i 1709447608798
q q 1709447610138
m m 1709447610987
w w 1709447611207
d r 1709447611410
u u 1709447612822
b b 1709447614042
c k 1709447614223
l p 1709447614920
i q 1709447616369
z z 1709447617351
b s 1709447617493
h b 1709447618093
w w 1709447619569
i i 1709447619584
u u 1709447620006
g g 1709447620306
q q 1709447621211
b b 1709447622023
z z 1709447622122
w t 1709447622680

题意解析:

给了2000次操作,每个操作一行,每行内第一个是待敲击字符(a),第二个是玩家(忘了名字)敲击的字符(b),第三个是当前的毫秒时间戳,a和b相等且和上一次的时间戳的差在1000以内成为1次连击,问这2000次操作内最大连击次数。

个人思路:

读到程序里,一行行遍历,如果前两个相等则看当前时间戳减上一行时间戳看是否满足1000以内,满足则tans++(临时存储),一旦不满足则让ans(最终答案)和tans取个大,然后tans=0,全部遍历完后输出ans看一下即可。

当然还有个既简单又愚蠢的办法,那就是把数据放到excel中,让第三个数据后减前得到当前操作和上次操作间隔的时间,然后一行行看,手动记录(doge),笔者自己就是这么做的(因为忘记了怎么读文件了,但凡它数据量达到5000以上,笔者绝对会灰溜溜地去翻文档)。

个人代码答案:9

代码之后更新。

C.数字诗意

题目原文:

题意解析:

一个数如果可以表示为连续的自然数之和(>=2个数字)称为诗意数字,问给n个数有几个不是诗意数字。

样例输入:

3
3 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 long
using 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一下就可以了。是不是很简单。

样例输入:

3
18 29 6

样例输出:

6 29 18

个人代码:

#include <bits/stdc++.h>
#define int long long
using 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,后边不大会描述,看代码吧。

样例输入:

4
1 2 3 4

样例输出:

3

个人代码:

#include <bits/stdc++.h>
#define int long long
using 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 3
1 2
2 4
3 5

样例输出:

1
0
1

个人代码:

#include <bits/stdc++.h>
#define int long long
using 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 4
0 -3 -1 1 2

样例输出:

4

个人代码:

所以暂时还没有,等想明白写出来了后再更新吧。

H.回文字符串

题目原文:

题意解析:

给定一个小写字符串s,在s前面可以加上任意数目的(l,q,b),问能否转化为回文串,如果可以输出“Yes”,否则输出“No”。

个人思路:

有三种情况,我们一一来介绍。

1:如果原本是回文字符串则可以。

2:如果该字符串中只存在l,q,b三种字符也可以。

3:如果去掉最后的l,q,b连着的子串,前面的子串是回文字符串也可以。

样例输入:

3
gmgqlq
palbll
aaa

样例输出:

Yes
No
Yes

个人代码:

#include <bits/stdc++.h>
#define int long long
using 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累加1
		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.封闭图形个数

#include <bits/stdc++.h>
#define int long long
using 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进不去while
	if (x == 0) return 1;
	//判断非0数字
	while (x)
	{
		//如果其中有8,加2,有0、4、6、9,加1
		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.回文数组

#include <bits/stdc++.h>
#define int long long
using 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、ans3
	int 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 long
using 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 long
using 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点写完,之后会把它完善成题解的,出了成绩后也会把感想补充完整。

Logo

欢迎加入西安开发者社区!我们致力于为西安地区的开发者提供学习、合作和成长的机会。参与我们的活动,与专家分享最新技术趋势,解决挑战,探索创新。加入我们,共同打造技术社区!

更多推荐