蓝桥杯
快来分享你的内容吧~
- 2025-04-11·Java后端我想问一下参加过Java蓝桥杯的鱼友,这个蓝桥杯很难吗,是不是考的算法和数据结构,如果我学完鱼皮推荐的王卓的数据结构和算法能不能拿奖F1ower:如果是b组拿奖不难3120分享
- 2024-11-10·Java后端球友们,打算明年参加蓝桥杯B组Java,有没有蓝桥杯的的资料呀编程导航_小y:可以看看之前鱼友分享的蓝桥杯竞赛经验哈:https://yuyuanweb.feishu.cn/wiki/CHzBwweCIiKEoLkB5TVcPsGNnTf#share-LDqLdFYmQonEUcxN7w3cNyjPndf110分享
- 有适合蓝桥杯的算法视频可以推荐一下吗?我想要报名今年的蓝桥杯B组的Java赛道,目前我刚刚学完韩顺平老师的Java基础,有没有相关的数据结构与算法视频推荐呀?...查看全文程序员鱼皮:可以看看我的数据结构和算法的学习路线:https://www.codefather.cn/course/1789189862986850306/section/1789191067892948993?type=

- 2024-08-17·27届,梦想做一名全栈工程师查看全文寻找算法学习搭子 准大二,校队选拔机会渺茫,准备备战年底的蓝桥杯 目前主要在洛谷和Acwing上做题,后期可能会上cf打打比赛 ...Yummy:是A批吗?😁320分享
4年蓝桥杯牢油条-论参加编程竞赛对我的编程能力的成长
## 先看战绩 - 大一(十三届):省三 - 一个月时间,学习了Java的语法,简单做了点题目。浑浑噩噩拿了三等奖 - 大二(十四届):省三 - 在练习平台上刷了60多题,因为自己能获得一个省二,结果还是三等奖,太逊了 - 大三(十五届):省一国优 - 在练习平台上刷了30多题,状态最好的一次,省赛全省前15/50名。后续忙其他时间了1题都没有刷就参加了国赛,拿了个参与奖 - 大四(十六届):省一,国赛未开始 - 在练习平台上刷了5题,纯吃以前的老本了。排名20多名,不如去年。目前已经在工作了能不能准备国赛不好说(反正费用学校出) (叠甲)本人并不好学,也不热爱算法,充其量就是一个什么活动比赛都在参与一脚的小瘪三。大佬们还请口下留情。 ## 个人参赛经历 ### 第一次参赛 也是大一入学的暑假有B站平台的一些视频看有看到有人推荐这个比赛,然后我在我大学学院的官网上也查询了学校发的获奖名单,就知道学校有组织这个。所以一入学的时候就有关注到这个比赛。 一般来说每个大一班级都会配备数个班助(有的地方又称呼为导生)帮助新生渡过大一的前几个月。 自然我也向班助询问了关于蓝桥杯等专业相关的竞赛和活动,不过我的班助并不是很清楚这个。于是我又去询问我的辅导员,我辅导员也是刚来的(比我们早几个月应该)所以也不是很懂这个。于是在大一的前俩个月我几乎没有了解到校内能有什么竞赛可以参加。因此前期主要在班级学委和一些组织部门里活动。 大概是10月,辅导员发了关于蓝桥杯的通知和微信群,很快啊。我加入了群聊。大概是几周后,开始了第一次培训。因为我大一的专业课只有一门Linux,所以我对编程语言的学习是几乎没有的。也是在这次培训中,我写了第一个Java的Hello World,为什么是Java呢?培训的老师说Java比较好拿奖。所以我就报Java了。 但是后续我一直忙于各种学校里的琐事,导致后面几次安排的培训我都没有去。第一学期结束时,我电脑里甚至没有Java。 寒假的时候我意识到,想要在大学里有更多的时间就需要提前做一些准备。我已经知道大一下学期会上C语言,所以我寒假的时候把C语言学了一下,学到了计算机二级的水平。刚好能含盖下学期的授课内容,这样我上课的时间就可以拿去做其他事情(打原神)了 不知道是为什么,大一下学期后我貌似把蓝桥杯忘记了。但是貌似是因为疫情蓝桥杯的报名缴费还没有结束(当时我还不知道蓝桥杯可以自己报名参加) 一直到了省赛的前一个月,老师在群里发通知说下周要确定缴费的人数了。会看我们在练习平台的做题情况。当时我一看到这个消息肾上腺素就彪起来了。反复想了想觉得一周时间开始学Java应该还有希望,决定冲一冲。 一周时间我并没有去学习Java语法,主要是因为部分地方和C语言类似,而且当时我觉得一周时间学基础还不如直接刷题(现在看来是一个很错误的决定)以至于我看别人代码里的List,Set是什么我不知道,我只知道这样写能实现我的效果,面向对象、集合什么的我一概不知。 前一周时间,我投入了很多空闲的时间在做题上。其实就是看别人的代码一行一行理解然后抄一遍。大概在练习系统提交了20多题,也是成功获得了省赛的资格。 后续直到省赛我一天大约能有2-3小时做题,我并没有增加多少的做题量,而是反复练习之前的很基础的题目,因为我知道反复抄别人的代码没效果。一定要有思路的同时自己能写出来。 比赛那天我通宵了,根本睡不着。比赛完后更是接受了自己只能获得优秀奖的事实(当时以为省赛有优秀奖)。因为13届的省赛对比12届的省赛题目难度根本不是一个级别(个人认为) 但是结果出来的那天我非常满意,这都给我混到三等奖了哈哈。爽~ ### 第二次参赛 由于知道自己对Java的基础知识完全一窍不通,因此暑假期间我看韩老师的Java课程来补充自己的Java基础。 大二期间又忙了起来,因为我已经是一个部门的部长(而且是大头兵)部门的纳新、培训、活动组织等等忙的不可开交。我也做不到能把所有碎片化的时间都用来学习。 总之大二上学期我并没有怎么准备蓝桥杯,我当时还有参加其他比赛(数学建模等)。但是靠着吃老本也是通过的校赛。 寒假期间我开始刷题,直到省赛大约做了60多题。14届的省赛感觉比13届的还难。当时我还写了4-5题,还感觉良好的觉得省二稳了(估计填空全错,编程也没过几个样例)。总之结果就是三等奖,说实话当时对自己蛮失望的。 ### 第三次参赛 由于上次的耻辱,第三次我依然选择参赛。但是我也明白我马上就要去实习就业了。因此我大二暑假期间学习了Spring Boot,Redis,对象存储,Vue,Element UI等等前端后端的技术。并没有去学习算法。觉得自己应该先保证自己能就业。 而且我反思了自己上次的情况,我其实从来没有系统的学习过算法。我都是直接刷题,不会然后在看读别人的代码是怎么做的。 因此大三我大部分时间都在开发项目,一部分的时间在力扣上跟着教程学算法。 大概做了30多题,而且15届省赛的题目比较简单,不是很考算法,更吃思维,能把题目读懂就基本能拿分了,我感觉自己状态也很好。但是俗话说期望越大失望越大,所以我还是觉得自己有省二就差不多。 最后是一等奖,而且还是省一排名比较靠前的,但是我也没有特别开心。因为我知道自己后续没时间准备国赛,没有国三的省一其实也不是那么的有含金量。 国赛题目的难度我个人做下来就是很考验算法了。对我这种刷题量不大的人来说确实拿国优也正常。 ### 第四次参赛 工作了,实习了。可以说我实习还能去比赛(不止蓝桥杯)都是很难得了哈哈。完全没有准备,靠吃老本获得了省一。 可能是因为我在学校参加了很多东西,我发现工作后空闲时间反而更多了。实习了前半年我几乎空闲时间都在玩,之前的实习单位工作也没什么压力,完完全全的养老圣地。最近是也发现自己有点过于摆烂了,所以我跳槽换了单位,换了地方。有了一定的压力后最近自己也能抽点时间做题练习一下,以及学习技术。 不知道这次国赛能有什么成绩,其实无所谓了。毕竟前三年我都参加了,第四年凑满最后一年。 ## 收获 参加编程比赛的好处其实我说不出来,其实就是和网络上说的差不多。什么锻炼自己逻辑思维呀,可以提高自己编程代码的能力啥的。 而且如果你是一个普通的后端开发,大部分时间都在写无聊的业务代码,我觉得偶尔做题可以活跃活跃自己脑子(个人认为) 作为一个民办本科院校的学生,在没有好学校的资源的情况下。这个比赛还是可以参加的,前提的费用要能报销,300是真的真的真的贵。除非说你确定能获得省一或者能拿到能报销的获奖等级(比如有些学校获得了省二等奖就可以报销费用)
江苏省蓝桥杯C++研究生组游寄(后续)
## 前情提要 [江苏省蓝桥杯C++研究生组游寄](https://www.codefather.cn/post/1910997813103140866) ## update C++研究生组87 / 310,省二下游,无缘国赛,希望明年最后一次能有希望进国赛看看  
江苏省蓝桥杯C++研究生组游寄
<img src="https://pic.code-nav.cn/post_picture/1848733556344999937/T7AEvHdUgbrPH87D.webp" alt="ZNUH78V@B`{]V(%6XY{2%`H_tmb.jpg" width="100%" /> ## update rank 87 / 310,省二,顺便吐槽一下大学b组的省一数量比我们参赛人数都多。。。。 ## 小插曲 考场前三十分钟一题没写,原因是压缩包一直损坏(整个考场都是),后面技术性调整好后,整个考场只有我的机子解压不了(卡0%),换到疑似py考场后才终于见到题目的庐山正面目(绷),但是考官后面给我加时了,全程也在尽力帮我解决问题,所以心态没什么影响。 ## 正式考试 ### 填空题 #### 题目一 计算1 - 20250412的每个数的数位和为5的倍数的个数,简单模拟一下,很快就过了 #### 题目二 不会,寄。究极模拟,不仅要构造每一个ipv6的8位十六进制数,还要按题意进行压缩,比如0000压缩为::,然后计算每个压缩后的长度和对1e7取模,直接跳了。 ### 编程题 #### 题目一 根据题意操作m次,每次把数组里的数换成a_i * bitcount(a_i),简单模拟一下,很快就过了。 #### 题目二 打了个最纯的暴力走人。题意大概是让你对1 - n的每个数的二进制重新排列,问你排列后的最大值,应该是简单的,瞪了半天没想出来,自我评价为纯纯的纸张 #### 题目三 模拟题,但是需要优化,这时心态已经炸了,写了复杂度爆表的双deque加umap走人。 #### 题目四 题目大意是给定一个数列,可以改变数列里的每个数h为[1, h - 1], 并且要求相邻数的差的绝对值必须在给定的集合b中,问操作的最小次数,感觉是简单的,但是只会回溯暴力,打完走人。 #### 题目五 题目让你求由0-正无穷组成的数列前x位的二进制位里1的个数,暴力很好打,打完暴力走人。 #### 题目六 给定容量m,还有n个点,每个点有b个存货,每个存货价格为a,到达该点的花费为c * o,问使得容量m为0的最小花费,感觉像背包问题,写了个最纯的dp走人,出考场发现有一处忘了break优化,糖完了。 ## 总结 得分在[0, 30]之间,保四争三了,这次体验很好,草稿纸很新,小姐姐很好看,明年再来(
我想问一下参加过Java蓝桥杯的鱼友,这个蓝桥杯很难吗,是不是考的算法和数据结构,如果我学完鱼皮推荐的王卓的数据结构和算法能不能拿奖
球友们,打算明年参加蓝桥杯B组Java,有没有蓝桥杯的的资料呀
有适合蓝桥杯的算法视频可以推荐一下吗?
我想要报名今年的蓝桥杯B组的Java赛道,目前我刚刚学完韩顺平老师的Java基础,有没有相关的数据结构与算法视频推荐呀?
寻找算法学习搭子 准大二,校队选拔机会渺茫,准备备战年底的蓝桥杯 目前主要在洛谷和Acwing上做题,后期可能会上cf打打比赛 3个月没碰算法生疏了好多,人多力量大,准备找几个算法搭子组个交流群共同学习! 可以在群里分享学习笔记、题解;分享算法学习资源;学习打卡;交流不会的题目 学习进度: 总题量大概在400题左右 数学知识还比较薄弱,其余基础的算法均已过了一遍,假期磕完博弈论之后主攻DP和图论 有兴趣的小伙伴加我v:gz498539230 一起加油~~
竞赛——【蓝桥杯】2022年11月第十四届蓝桥杯模拟赛第一期Python
### 1、二进制位数 **问题描述** 十进制整数 2 在十进制中是 1 位数,在二进制中对应 10 ,是 2 位数。 十进制整数 22 在十进制中是 2 位数,在二进制中对应 10110 ,是 5 位数。 请问十进制整数 2022 在二进制中是几位数? **答案提交** 这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一个整数,在提交答案时只填写这个整数,填写多余的内容将无法得分。 **参考答案** 11 `print(len(bin(2022))-2)` ### 2、晨跑 **问题描述** 小蓝每周六、周日都晨跑,每月的 1、11、21、31日也晨跑。其它时间不晨跑。 已知 2022年1月1日是周六,请问小蓝整个2022年晨跑多少天? **答案提交** 这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一个整数,在提交答案时只填写这个整数,填写多余的内容将无法得分。 **参考答案** 138 `import datetime start = datetime.datetime(year=2022,month=1,day=1) end = datetime.datetime(year=2023,month=1,day=1) cnt = 0 while start != end: if start.isoweekday() in [6,7] or start.day in [1,11,21,31]: cnt += 1 start += datetime.timedelta(days=1) print(cnt)` ### 3、调和级数 **问题描述** 小蓝特别喜欢调和级数 S(n)=1/1+1/2+1/3+1/4+…+1/n 。 请问,n 至少为多大时,S(n)>12 ? **答案提交** 这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一个整数,在提交答案时只填写这个整数,填写多余的内容将无法得分。 参考答案 91380 `s = 0 i = 1 while s <= 12: s += 1.0/i i += 1 print(i-1) # 最后一次不用加` ### 4、山谷 **问题描述** 给定一个字母矩阵,如果矩阵中的某个位置不在四条边上,而且该位置上的字母小于其上下左右四个位置的字母,则称为一个山谷。 例如,对于如下矩阵 > DDDDD > CADCE > FFFFA 共有两个山谷,位于第二行第二列和第四列。请注意第二行第三列和第三行第五列都不是山谷。 对于如下30行60列的字母矩阵(请用等宽字体查看),请问有多少个山谷? `PHQGHUMEAYLNLFDXFIRCVSCXGGBWKFNQDUXWFNFOZVSRTKJPREPGGXRPNRVY STMWCYSYYCQPEVIKEFFMZNIMKKASVWSRENZKYCXFXTLSGYPSFADPOOEFXZBC OEJUVPVABOYGPOEYLFPBNPLJVRVIPYAMYEHWQNQRQPMXUJJLOOVAOWUXWHMS NCBXCOKSFZKVATXDKNLYJYHFIXJSWNKKUFNUXXZRZBMNMGQOOKETLYHNKOAU GZQRCDDIUTEIOJWAYYZPVSCMPSAJLFVGUBFAAOVLZYLNTRKDCPWSRTESJWHD IZCOBZCNFWLQIJTVDWVXHRCBLDVGYLWGBUSBMBORXTLHCSMPXOHGMGNKEUFD XOTOGBGXPEYANFETCUKEPZSHKLJUGGGEKJDQZJENPEVQGXIEPJSRDZJAZUJL LCHHBFQMKIMWZOBIWYBXDUUNFSKSRSRTEKMQDCYZJEEUHMSRQCOZIJIPFION EEDDPSZRNAVYMMTATBDZQSOEMUVNPPPSUACBAZUXMHECTHLEGRPUNKDMBPPW EQTGJOPARMOWZDQYOXYTJBBHAWDYDCPRJBXPHOOHPKWQYUHRQZHNBNFUVQNQ QLRZJPXIOGVLIEXDZUZOSRKRUSVOJBRZMWZPOWKJILEFRAAMDIGPNPUUHGXP QNJWJMWAXXMNSNHHLQQRZUDLTFZOTCJTNZXUGLSDSMZCNOCKVFAJFRMXOTHO WKBJZWUCWLJFRIMPMYHCHZRIWKBARXBGFCBCEYHJUGIXWTBVTREHBBCPXIFB XVFBCGKCFQCKCOTZGKUBMJRMBSZTSSHFROEFWSJRXJHGUZYUPZWWEIQURPIX IQFLDUUVEOOWQCUDHNEFNJHAIMUCZFSKUIDUBURISWTBRECUYKABFCVKDZEZ TOIDUKUHJZEFCZZZBFKQDPQZIKFOBUCDHTHXDJGKJELRLPAXAMCEROSWITDP TPCCLIFKELJYTIHRCQAYBNEFXNXVGZEDYYHNGYCDRUDMPHMECKOTRWOSPOFG HFOZQVLQFXWWKMFXDYYGMDCASZSGOVSODKJGHCWMBMXRMHUYFYQGAJQKCKLZ NAYXQKQOYZWMYUBZAZCPKHKTKYDZIVCUYPURFMBISGEKYRGZVXDHPOAMVAFY RARXSVKHTQDIHERSIGBHZJZUJXMMYSPNARAEWKEGJCCVHHRJVBJTSQDJOOTG PKNFPFYCGFIEOWQRWWWPZSQMETOGEPSPXNVJIUPALYYNMKMNUVKLHSECDWRA CGFMZKGIPDFODKJMJQWIQPUOQHIMVFVUZWYVIJGFULLKJDUHSJAFBTLKMFQR MYJFJNHHSSQCTYDTEAMDCJBPRHTNEGYIWXGCJWLGRSMEAEARWTVJSJBAOIOJ LWHYPNVRUIHOSWKIFYGTYDHACWYHSGEWZMTGONZLTJHGAUHNIHREQGJFWKJS MTPJHAEFQZAAULDRCHJCCDYRFVVRIVUYEEGFIVDRCYGURQDREDAKUBNFGUPR OQYLOBCWQXKZMAUSJGMHCMHGDNMPHNQKAMHURKTRFFACLVGRZKKLDACLLTEO JOMONXRQYJZGINRNNZWACXXAEDRWUDXZRFUSEWJTBOXVYNFHKSTCENAUMNDD XFDMVZCAUTDCCKXAAYDZSXTTOBBGQNGVVPJGOJOGLMKXGBFCPYPCKQCHBDDZ WRXBZMQRLXVOBTWHXGINFGFRCCLMZNMJUGWWBSQFCIHUBSJOLLMSQSGHMCPH ELSOTFLBGSFNPCUZSRUPCHYNVZHCPQUGRIWNIQXDFJPWPXFBLKPNPEELFJMT` **答案提交** 这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一个整数,在提交答案时只填写这个整数,填写多余的内容将无法得分。 **参考答案** 276 **代码实现:** `m = '''PHQGHUMEAYLNLFDXFIRCVSCXGGBWKFNQDUXWFNFOZVSRTKJPREPGGXRPNRVY STMWCYSYYCQPEVIKEFFMZNIMKKASVWSRENZKYCXFXTLSGYPSFADPOOEFXZBC OEJUVPVABOYGPOEYLFPBNPLJVRVIPYAMYEHWQNQRQPMXUJJLOOVAOWUXWHMS NCBXCOKSFZKVATXDKNLYJYHFIXJSWNKKUFNUXXZRZBMNMGQOOKETLYHNKOAU GZQRCDDIUTEIOJWAYYZPVSCMPSAJLFVGUBFAAOVLZYLNTRKDCPWSRTESJWHD IZCOBZCNFWLQIJTVDWVXHRCBLDVGYLWGBUSBMBORXTLHCSMPXOHGMGNKEUFD XOTOGBGXPEYANFETCUKEPZSHKLJUGGGEKJDQZJENPEVQGXIEPJSRDZJAZUJL LCHHBFQMKIMWZOBIWYBXDUUNFSKSRSRTEKMQDCYZJEEUHMSRQCOZIJIPFION EEDDPSZRNAVYMMTATBDZQSOEMUVNPPPSUACBAZUXMHECTHLEGRPUNKDMBPPW EQTGJOPARMOWZDQYOXYTJBBHAWDYDCPRJBXPHOOHPKWQYUHRQZHNBNFUVQNQ QLRZJPXIOGVLIEXDZUZOSRKRUSVOJBRZMWZPOWKJILEFRAAMDIGPNPUUHGXP QNJWJMWAXXMNSNHHLQQRZUDLTFZOTCJTNZXUGLSDSMZCNOCKVFAJFRMXOTHO WKBJZWUCWLJFRIMPMYHCHZRIWKBARXBGFCBCEYHJUGIXWTBVTREHBBCPXIFB XVFBCGKCFQCKCOTZGKUBMJRMBSZTSSHFROEFWSJRXJHGUZYUPZWWEIQURPIX IQFLDUUVEOOWQCUDHNEFNJHAIMUCZFSKUIDUBURISWTBRECUYKABFCVKDZEZ TOIDUKUHJZEFCZZZBFKQDPQZIKFOBUCDHTHXDJGKJELRLPAXAMCEROSWITDP TPCCLIFKELJYTIHRCQAYBNEFXNXVGZEDYYHNGYCDRUDMPHMECKOTRWOSPOFG HFOZQVLQFXWWKMFXDYYGMDCASZSGOVSODKJGHCWMBMXRMHUYFYQGAJQKCKLZ NAYXQKQOYZWMYUBZAZCPKHKTKYDZIVCUYPURFMBISGEKYRGZVXDHPOAMVAFY RARXSVKHTQDIHERSIGBHZJZUJXMMYSPNARAEWKEGJCCVHHRJVBJTSQDJOOTG PKNFPFYCGFIEOWQRWWWPZSQMETOGEPSPXNVJIUPALYYNMKMNUVKLHSECDWRA CGFMZKGIPDFODKJMJQWIQPUOQHIMVFVUZWYVIJGFULLKJDUHSJAFBTLKMFQR MYJFJNHHSSQCTYDTEAMDCJBPRHTNEGYIWXGCJWLGRSMEAEARWTVJSJBAOIOJ LWHYPNVRUIHOSWKIFYGTYDHACWYHSGEWZMTGONZLTJHGAUHNIHREQGJFWKJS MTPJHAEFQZAAULDRCHJCCDYRFVVRIVUYEEGFIVDRCYGURQDREDAKUBNFGUPR OQYLOBCWQXKZMAUSJGMHCMHGDNMPHNQKAMHURKTRFFACLVGRZKKLDACLLTEO JOMONXRQYJZGINRNNZWACXXAEDRWUDXZRFUSEWJTBOXVYNFHKSTCENAUMNDD XFDMVZCAUTDCCKXAAYDZSXTTOBBGQNGVVPJGOJOGLMKXGBFCPYPCKQCHBDDZ WRXBZMQRLXVOBTWHXGINFGFRCCLMZNMJUGWWBSQFCIHUBSJOLLMSQSGHMCPH ELSOTFLBGSFNPCUZSRUPCHYNVZHCPQUGRIWNIQXDFJPWPXFBLKPNPEELFJMT''' matrix = m.split('\n') cnt = 0 for i in range(1,29): for j in range(1,59): if matrix[i][j] < matrix[i-1][j] and matrix[i][j] < matrix[i+1][j] and matrix[i][j] < matrix[i][j+1] and matrix[i][j] < matrix[i][j-1]: cnt += 1 print(cnt)` ### 5、最小矩阵 **问题描述** 小蓝有一个 100 行 100 列的矩阵,矩阵的左上角为 1。其它每个位置正好比其左边的数大 2,比其上边的数大 1 。 例如,第 1 行第 2 列为 3,第 2 行第 2 列 为 4,第 10 行第 20 列为 48。 小蓝想在矩阵中找到一个由连续的若干行、连续的若干列组成的子矩阵,使得其和为 2022,请问这个子矩阵中至少包含多少个元素(即子矩阵的行数和列数的乘积)。 **答案提交** 这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一个整数,在提交答案时只填写这个整数,填写多余的内容将无法得分。 **参考答案** 12 **代码实现:** 解题思路: 1、矩阵应该是如图所示的分布 <img src="https://xingqiu-tuchuang-1256524210.cos.ap-shanghai.myqcloud.com/958/image-20221111204149234.png" alt="image-20221111204149234" style="zoom:33%;" /> `m = [[0]*100 for _ in range(100)] for i in range(100): m[i][0] = i + 1 for j in range(1,100): m[i][j] = m[i][j-1]+2 # matrix[a:c][b:d]的子矩阵的和 def sum_matrix(a,b,c,d): ans = 0 for i in range(a,c+1): for j in range(b,d+1): ans += m[i][j] return ans res = float('inf') for i in range(100): for j in range(100): for k in range(i,100): for z in range(j,100): ans = sum_matrix(i,j,k,z) if ans == 2022: res = min(res,(k-i+1)*(z-j+1)) break elif ans > 2022: break print(res)` ### 6、核酸日期 **问题描述** 如果周一做核酸,周二显示核酸天数为 1 天,周三显示 2 天,以此类推,周六显示 5 天,周日显示 6 天。 小蓝在某一天做了一次核酸,请问他的核酸显示为几天。已知做核酸和查看核酸不是在同一天,而且相差不超过 6 天(显示的数为 1 到 6 之间的数)。 **输入格式** 输入第一行包含一个整数 s ,表示小蓝做核酸是周几。 s 为 1 到 6 依次表示周一到周六,s 为 7 表示周日。 第二行包含一个整数 t ,表示查看核酸是周几。 t 为 1 到 6 依次表示周一到周六,t 为 7 表示周日。 **输出格式** 输出一行包含一个整数,表示答案。 **样例输入** > 5 > 2 **样例输出** > 4 评测用例规模与约定 对于所有评测用例,1 < = s , t < = 7 。 **参考答案** `s = int(input()) t = int(input()) if t > s: print(t-s) else: print(7-s+t)` ### 7、英文转换 **问题描述** 输入一个由小写英文字母组成的字符串,请将其中的元音字母(a, e, i, o, u)转换成大写,其它字母仍然保持小写。 **输入格式** 输入一行包含一个字符串。 **输出格式** 输出转换后的字符串。 **样例输入** > lanqiao **样例输出** > lAnqIAO **评测用例规模与约定** 对于所有评测用例,字符串的长度不超过100。 **参考答案** `s = input() res = '' for i in s: if i in "aeiou": res += i.upper() # 转为大写 else: res += i print(res)` ### 8、充电器 **问题描述** 小蓝有一个充电器,可以使用不同的电压和电流充电。 给定充电器工作的记录,请计算在这个记录期间总共通过充电传输了多少电能。 **输入格式** 输入第一行包含一个整数 n , 表示记录的条数。 接下来 n 行,每行包含一个时刻 T 和两个非负整数 U, I,表示在时刻 T 充电电压变为 U(单位伏),电流变为 I(单位A)。最后一行满足 U 和 I 均为 0,在前面的行中也可能出现 U、I 为 0 的情况。其中时间表示为 HH:MM:SS 的格式,时分秒分别用两位十进制数表示(补前导零)。 输入保证时刻依次递增且在 00:00:00 至 23:59:59 的区间内,不用考虑跨过零点充电的情况。 **输出格式** 输出一个整数,表示总共通电的电能为多少焦耳,其中 1 焦耳等于 1 伏乘以1 安乘以 1 秒。 **样例输入** > 3 > 12:00:00 12 1 > 12:01:02 5 2 > 12:01:10 0 0 **样例输出** > 824 **评测用例规模与约定** 对于所有评测用例,1 < = n < = 100 , 0 < = U , I < = 100 1 <= n <= 100, 0 <= U, I <= 1001<=n<=100,0<=U,I<=100。 **参考答案** `n = int(input()) # 时间转为秒数 def get_second(t): h,m,s = map(int,t.split(':')) # 得到hour,minute,second return h*3600+m*60+s T = [] # 储存所有时间 for i in range(n): t,u,v = input().split() # 输入三个值 u,v = int(u),int(v) t = get_second(t) T.append((t,u,v)) ans = 0 for i in range(n-1): U,I = T[i][1], T[i][2] # 电流、电压 t = T[i+1][0] - T[i][0] # 时间差 ans += U*I*t # UIt print(ans)` ### 9、全相等三角形 **问题描述** 给定一个字母矩阵,定义一个LQ三角形为某行中连续的几个字母、某列中连续的几个字母和一条45度的斜线中连续的几个字母组成的等腰直角三角形的边缘部分,其中每条边上的字母数量相等且至少为2 。 例如,对于下面的字母矩阵中,所有的字母 L 组成一个LQ三角形,所有字母 Q 组成了一个 LQ 三角形,所有字母 C 也组成了一个 LQ 三角形。 > AAAAAAA > ALLLLLA > ALQQLAA > ALQLAAC > ALLAACC > ALAACCC 如果一个 LQ 三角形边上的所有字母相等,则称为一个全相等三角形。以三个例子都是全相等三角形。 给定一个字母矩阵,请求其中有多少个全相等三角形。 **输入格式** 输入第一行包含两个整数 n, m,分别表示字母矩阵的行数和列数。 接下来 n 行,每行 m 个大写字母,为给定的矩阵 **输出格式** 输出一行,包含一个整数,表示答案。 **样例输入**1 > 3 4 > AAAA > ALAQ > ALQQ **样例输出**1 4 **样例输入2** > 6 7 > AAAAAAA > ALLLLLA > ALQQLAA > ALQLAAC > ALLAACC > ALAACCC **样例输出**2 23 **评测用例规模与约定** 对于50 % 50%50%的评测用例,1 < = n , m < = 10 1 <= n, m <= 101<=n,m<=10。 对于所有评测用例,1 < = n , m < = 100 1 <= n, m <= 1001<=n,m<=100。 **参考答案:** `from re import L n,m = map(int, input().split()) M = [] for _ in range(n): M.append(input()) ans = 0 def check(x,y,a,b,d): if d == 0: while x >= a and y <= b: if M[a][b] != M[x][y]: return False x -= 1 y += 1 elif d == 1: while x >= a and y >= b: if M[a][b] != M[x][y]: return False x -= 1 y -= 1 elif d == 2: while x <= a and y <= b: if M[a][b] != M[x][y]: return False x += 1 y += 1 elif d == 3: while x <= a and y >= b: if M[a][b] != M[x][y]: return False x += 1 y -= 1 return True for i in range(n): for j in range(m): up,down,left,right = 0,0,0,0 while (i - up) >= 0 and M[i][j] == M[i-up][j]: up +=1 while (i + down) < n and M[i][j] == M[i+down][j]: down +=1 while (j - left) >= 0 and M[i][j] == M[i][j-left]: left +=1 while (j + right) < m and M[i][j] == M[i][j+right]: right +=1 for k in range(1,min(up,left)): if check(i,j-k,i-k,j,0): ans += 1 for k in range(1,min(up,right)): if check(i,j+k,i-k,j,1): ans += 1 for k in range(1,min(down,left)): if check(i,j-k,i+k,j,2): ans += 1 for k in range(1,min(down,right)): if check(i,j+k,i+k,j,3): ans += 1 print(ans)` ### 10、最小下标 **问题描述** 小蓝有一个由大写字母 ABCDEF 组成的字符串 S ,长度为 n,字符串的下标依次为 0 到 n-1 。 小蓝按照如下方法生成一个无限长的字符串: 首先选定一个 0 到 n-1 之间的数,作为初始下标。 从初始下标开始,将下标对应的字符加入到字符串的结尾,将字符的序号(A到F依次对应 1 到 6 )与下标相加作为新的下标值,如果下标大于等于 n,将其对 n 求余。重复此过程,即得到无限长的字符串。 例如,对于字符串 ACDF,当初始下标是 0 时,生成的字符串为:ACACACACAC… 再如,对于字符串 DCBA,当初始下标是 1 时,生成的字符串为:CDDDDDDDDD… 给定小蓝的字符串 S,请问当初始下标为多少时,生成的字符串最小。 **输入格式** 输入一行包含一个字符串。 输出格式 输出一行,包含一个整数,为所求的下标,如果有多个下标满足要求,输出最小的那个。 **样例输入1** > DCBA 样例输出1 > 3 **样例输入2** > AAAA **样例输出2** > 0 **评测用例规模与约定** 令 ∣ S ∣ |S|∣S∣ 表示 S SS 的长度。 对于 30 % 30%30% 的评测用例,1 < = ∣ S ∣ < = 100 1 <= |S| <= 1001<=∣S∣<=100。 对于 50 % 50%50% 的评测用例,1 < = ∣ S ∣ < = 1000 1 <= |S| <= 10001<=∣S∣<=1000。 对于 70 % 70%70% 的评测用例,1 < = ∣ S ∣ < = 10000 1 <= |S| <= 100001<=∣S∣<=10000。 对于 80 % 80%80% 的评测用例,1 < = ∣ S ∣ < = 100000 1 <= |S| <= 1000001<=∣S∣<=100000。 对于所有评测用例,1 < = ∣ S ∣ < = 1000000 1 <= |S| <= 10000001<=∣S∣<=1000000。 **参考答案:** `S = input() n = len(S) # 字符串的长度 # 下标为i的下一个下标 def getNext(i): return (i + ord(S[i]) - ord('A') + 1)%n ans = 0 min_s = 'Z'*n for i in range(n): s = S[i] x = i while len(s) < n: next_i = getNext(x) s += S[next_i] x = next_i if s > min_s: break if s < min_s: min_s = s ans = i print(ans)`
竞赛——【蓝桥杯】2022年12月第十四届蓝桥杯模拟赛第二期Java
### 1、最小的2022 **问题描述** 请找到一个大于 2022 的最小数,这个数转换成二进制之后,最低的 6 个二进制为全为 0 。 请将这个数的十进制形式作为答案提交。 **答案提交** 这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一个整数,在提交答案时只填写这个整数,填写多余的内容将无法得分。 **参考答案** 2048 ### 2、经过天数 **问题描述** 我们计从 1949 年 10 月 1 日至 1949 年 10 月 2 日为经过了 1 天。 请问从 1949 年 10 月 1 日至 2022 年 1 月 1 日经过了多少天? **答案提交** 这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一个整数,在提交答案时只填写这个整数,填写多余的内容将无法得分。 **参考答案** 26390 ### 3、特殊的十六进制数 **问题描述** 8518 是一个非常特殊的数,如果把这个数看成 16 进制数,它的值为 (8518)16=8_16_16_16+5_16_16+1_16+8=34072,而 34072 正好是 8518 的整数倍。 9558 也是这样一个数,当看成 16 进制时是 38232。 其实长度为 1 的数 0 到 9 都满足看成 16 进制后是自己的整数倍(1倍)。 请问,除开长度为 1 的数,最小的满足这样条件的数是多少? **答案提交** 这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一个整数,在提交答案时只填写这个整数,填写多余的内容将无法得分。 **参考答案** 1038 ### 4、**矩阵的最小路径** **问题描述** 小蓝有一个 30 行 60 列的数字矩阵,矩阵中的每个数都是 0 到 9 之间的数字。现在小蓝想从这个矩阵的第一行第一列画一条折线到第 30 行 60 列,线只能沿水平向右走或竖直向下走,只能在有数字的地方拐弯。小蓝想知道,这样一条线经过的数字的和最大是多少。 **输入** `174094882455171152761423221685761892795431233411387427793198 650286024865090061389344606618496378829135984076361542097372 601657541200146071777733599818266038012509478351201640618984 143988087783837107349651099683484992553337438088068198972282 890781586124258626539246182119762952003918195325258677229419 698255491250839396799769357665825441616335532825361862146291 503649293440596342887581257444442930778730382520372975343211 325351222640703400531067500454956482168314849207060705673849 265774579830223671554026061117300483012903885770893074783710 083450145620356667677191627276513995926532444279237315785832 411595106453089134746365281031552217482363035280722591085079 053410485925413958279617719034175332412908745680774313630190 429314820559328748143552689295945058801322270313370955837837 939182801848609300876356583948397645861551964542532682663945 625356614462682551015176002433628234343684739800880514363921 982340231989891351425389287014819359798014755509282450440511 590838726938103384801541373585690893606978941566666714061214 952341523168827712604946036245881214982452998386986623826275 782780208928205527678781609589000725521486468983551558405472 149903035076783644195574734088152324666290493119955560594634 905391288186024902215444250421277955403412298227858394469856 607272647132163832860126054679347881638761723785858733108109 249157334220127702410373959720286708183036202841837581704881 367895556630088230650972282944827258473951902831431040790814 079538232104075905120989173307660289899942087873076421916033 622143260549608274076012938515668898707915863945382394851328 164677964192631597026176253407553188801750590935427267220117 591817866992665840378311257621611574856498432538327068011953 631534031790352912617015229051836886166704989498756486878095 690013558017746707412183571476823027885971347137127534455141` **答案提交** 这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一个整数,在提交答案时只填写这个整数,填写多余的内容将无法得分。 **参考答案** 592 ### 5、**质数拆分** **问题描述** 将 2022 拆分成不同的质数的和,请问最多拆分成几个? **答案提交** 这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一个整数,在提交答案时只填写这个整数,填写多余的内容将无法得分。 **参考答案** 59 ### 6、**拷贝时间** **问题描述** 小蓝正在拷贝一份文件,他现在已经拷贝了 t 秒时间,已经拷贝了 c 字节,文件总共有 s 字节,如果拷贝是匀速进行的,请问小蓝大概还需要拷贝多少秒? **输入格式** 输入一行包含三个整数 t, c, s,相邻两个整数之间用一个空格分隔。 **输出格式** 输出一个整数,表示答案。数据保证答案正好是整数。 **样例输入**1 > 3 10 20 **样例输出**1 > 3 **样例输入**2 > 30 14 21 **样例输出2** > 15 <img src="https://xingqiu-tuchuang-1256524210.cos.ap-shanghai.myqcloud.com/958/image-20221128102350374.png" alt="image-20221128102350374" style="zoom:40%;" /> **参考答案** ### 7、**单词去重** **问题描述** 小蓝有 n 个单词,但是单词中有一些是重复的,请帮小蓝去除重复的单词。 输入格式 输入第一行包含一个正整数 n ,表示小蓝的单词数量。 接下来 n 行,每行包含一个由小写字母组成的单词。 **输出格式** 请输出去除重复后的那些单词。如果一个单词出现了多遍,请保留第一次出现的单词,去除之后出现的单词,按输入的顺序输出。 **样例输入** > 5 > > lanqiao > > hi > > hello > > hello > > lanqiao **样例输出** > lanqiao > > hi > > hello ### 8、**最短回文串** **问题描述** 一个字符串如果从左向右读和从右向左读相同,则称为一个回文串,例如 lanqiaoaiqnal 是一个回文串。 小蓝有一个字符串,请将这个字符串右边加上一些字符,使其成为一个回文串。 如果有多种方案,请输出最短的回文串。 **输入格式** 输入一行包含一个字符串,由小写英文字母组成。 **输出格式** 输出一行包含答案。 **样例输入1** > lanqiao **样例输出1** > lanqiaoaiqnal **样例输入2** > banana **样例输出2** > banana **样例输入3** > noon **样例输出3** > noon **评测用例规模与约定** 对于所有评测用例,1 <= 字符串长度 <= 100。 ### 9、多少个X? **问题描述** 给定一个字母矩阵。一个 X 图形由中心点和由中心点向四个45度斜线方向引出的直线段组成,四条线段的长度相同,而且四条线段上的字母和中心点的字母相同。 一个 X图形可以使用三个整数 r, c, L 来描述,其中 r, c 表示中心点位于第 r 行第 c 列,正整数 L 表示引出的直线段的长度。 对于 1 到 L 之间的每个整数 i,X图形满足:第 r-i 行第 c-i 列与第 r 行第 c 列相同,第 r-i 行第 c+i 列与第 r 行第 c 列相同,第 r+i 行第 c-i 列与第 r 行第 c 列相同,第 r+i 行第 c+i 列与第 r 行第 c 列相同。 例如,对于下面的字母矩阵中,所有的字母 L 组成一个 X图形,其中中间的 5 个 L 也组成一个 X图形。所有字母 Q 组成了一个 X图形。 LAAALA ALQLQA AALQAA ALQLQA LAAALA 给定一个字母矩阵,请求其中有多少个X图形。 **输入格式** 输入第一行包含两个整数 n, m,分别表示字母矩阵的行数和列数。 接下来 n 行,每行 m 个大写字母,为给定的矩阵。 **输出格式** 输出一行,包含一个整数,表示答案。 **样例输入1** > 5 6 > LAAALA > ALQLQA > AALQAA > ALQLQA > LAAALA **样例输出1** > 3 **评测用例规模与约定** 对于 50% 的评测用例,1 <= n, m <= 10。 对于所有评测用例,1 <= n, m <= 100。 ### 10、最小交换 **问题描述** 小蓝有一个序列 a\[1\], a\[2\], ..., a\[n\],每次可以交换相邻的两个元素,代价为两个元素中较大的那个。 请问,要通过交换将序列变为从小到大递增的序列,总代价最少为多少? **输入格式** 输入一行包含一个整数 n ,表示序列长度。 第二行包含 n 个整数,表示给定的序列。 **输出格式** **样例输入1** `4 1 5 2 1` **样例输出1** `12` **评测用例规模与约定** 对于 30% 的评测用例,1 <= n <= 1000, 1 <= a\[i\] <= 1000。 对于 60% 的评测用例,1 <= n <= 50000, 1 <= a\[i\] <= 50000。 对于所有评测用例,1 <= n <= 1000000, 1 <= a\[i\] <= 1000000。
竞赛——【蓝桥杯】2022年11月第十四届蓝桥杯模拟赛第一期C/C++
### 1、二进制位数 **问题描述** 十进制整数 2 在十进制中是 1 位数,在二进制中对应 10 ,是 2 位数。 十进制整数 22 在十进制中是 2 位数,在二进制中对应 10110 ,是 5 位数。 请问十进制整数 2022 在二进制中是几位数? **答案提交** 这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一个整数,在提交答案时只填写这个整数,填写多余的内容将无法得分。 **参考答案** 11 ### 2、晨跑 **问题描述** 小蓝每周六、周日都晨跑,每月的 1、11、21、31日也晨跑。其它时间不晨跑。 已知 2022年1月1日是周六,请问小蓝整个2022年晨跑多少天? **答案提交** 这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一个整数,在提交答案时只填写这个整数,填写多余的内容将无法得分。 **参考答案** 138 ### 3、调和级数 **问题描述** 小蓝特别喜欢调和级数 S(n)=1/1+1/2+1/3+1/4+…+1/n 。 请问,n 至少为多大时,S(n)>12 ? **答案提交** 这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一个整数,在提交答案时只填写这个整数,填写多余的内容将无法得分。 参考答案 91380 ### 4、山谷 **问题描述** 给定一个字母矩阵,如果矩阵中的某个位置不在四条边上,而且该位置上的字母小于其上下左右四个位置的字母,则称为一个山谷。 例如,对于如下矩阵 > DDDDD > CADCE > FFFFA 共有两个山谷,位于第二行第二列和第四列。请注意第二行第三列和第三行第五列都不是山谷。 对于如下30行60列的字母矩阵(请用等宽字体查看),请问有多少个山谷? `PHQGHUMEAYLNLFDXFIRCVSCXGGBWKFNQDUXWFNFOZVSRTKJPREPGGXRPNRVY STMWCYSYYCQPEVIKEFFMZNIMKKASVWSRENZKYCXFXTLSGYPSFADPOOEFXZBC OEJUVPVABOYGPOEYLFPBNPLJVRVIPYAMYEHWQNQRQPMXUJJLOOVAOWUXWHMS NCBXCOKSFZKVATXDKNLYJYHFIXJSWNKKUFNUXXZRZBMNMGQOOKETLYHNKOAU GZQRCDDIUTEIOJWAYYZPVSCMPSAJLFVGUBFAAOVLZYLNTRKDCPWSRTESJWHD IZCOBZCNFWLQIJTVDWVXHRCBLDVGYLWGBUSBMBORXTLHCSMPXOHGMGNKEUFD XOTOGBGXPEYANFETCUKEPZSHKLJUGGGEKJDQZJENPEVQGXIEPJSRDZJAZUJL LCHHBFQMKIMWZOBIWYBXDUUNFSKSRSRTEKMQDCYZJEEUHMSRQCOZIJIPFION EEDDPSZRNAVYMMTATBDZQSOEMUVNPPPSUACBAZUXMHECTHLEGRPUNKDMBPPW EQTGJOPARMOWZDQYOXYTJBBHAWDYDCPRJBXPHOOHPKWQYUHRQZHNBNFUVQNQ QLRZJPXIOGVLIEXDZUZOSRKRUSVOJBRZMWZPOWKJILEFRAAMDIGPNPUUHGXP QNJWJMWAXXMNSNHHLQQRZUDLTFZOTCJTNZXUGLSDSMZCNOCKVFAJFRMXOTHO WKBJZWUCWLJFRIMPMYHCHZRIWKBARXBGFCBCEYHJUGIXWTBVTREHBBCPXIFB XVFBCGKCFQCKCOTZGKUBMJRMBSZTSSHFROEFWSJRXJHGUZYUPZWWEIQURPIX IQFLDUUVEOOWQCUDHNEFNJHAIMUCZFSKUIDUBURISWTBRECUYKABFCVKDZEZ TOIDUKUHJZEFCZZZBFKQDPQZIKFOBUCDHTHXDJGKJELRLPAXAMCEROSWITDP TPCCLIFKELJYTIHRCQAYBNEFXNXVGZEDYYHNGYCDRUDMPHMECKOTRWOSPOFG HFOZQVLQFXWWKMFXDYYGMDCASZSGOVSODKJGHCWMBMXRMHUYFYQGAJQKCKLZ NAYXQKQOYZWMYUBZAZCPKHKTKYDZIVCUYPURFMBISGEKYRGZVXDHPOAMVAFY RARXSVKHTQDIHERSIGBHZJZUJXMMYSPNARAEWKEGJCCVHHRJVBJTSQDJOOTG PKNFPFYCGFIEOWQRWWWPZSQMETOGEPSPXNVJIUPALYYNMKMNUVKLHSECDWRA CGFMZKGIPDFODKJMJQWIQPUOQHIMVFVUZWYVIJGFULLKJDUHSJAFBTLKMFQR MYJFJNHHSSQCTYDTEAMDCJBPRHTNEGYIWXGCJWLGRSMEAEARWTVJSJBAOIOJ LWHYPNVRUIHOSWKIFYGTYDHACWYHSGEWZMTGONZLTJHGAUHNIHREQGJFWKJS MTPJHAEFQZAAULDRCHJCCDYRFVVRIVUYEEGFIVDRCYGURQDREDAKUBNFGUPR OQYLOBCWQXKZMAUSJGMHCMHGDNMPHNQKAMHURKTRFFACLVGRZKKLDACLLTEO JOMONXRQYJZGINRNNZWACXXAEDRWUDXZRFUSEWJTBOXVYNFHKSTCENAUMNDD XFDMVZCAUTDCCKXAAYDZSXTTOBBGQNGVVPJGOJOGLMKXGBFCPYPCKQCHBDDZ WRXBZMQRLXVOBTWHXGINFGFRCCLMZNMJUGWWBSQFCIHUBSJOLLMSQSGHMCPH ELSOTFLBGSFNPCUZSRUPCHYNVZHCPQUGRIWNIQXDFJPWPXFBLKPNPEELFJMT` **答案提交** 这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一个整数,在提交答案时只填写这个整数,填写多余的内容将无法得分。 **参考答案** 276 ### 5、最小矩阵 **问题描述** 小蓝有一个 100 行 100 列的矩阵,矩阵的左上角为 1。其它每个位置正好比其左边的数大 2,比其上边的数大 1 。 例如,第 1 行第 2 列为 3,第 2 行第 2 列 为 4,第 10 行第 20 列为 48。 小蓝想在矩阵中找到一个由连续的若干行、连续的若干列组成的子矩阵,使得其和为 2022,请问这个子矩阵中至少包含多少个元素(即子矩阵的行数和列数的乘积)。 **答案提交** 这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一个整数,在提交答案时只填写这个整数,填写多余的内容将无法得分。 **参考答案** 12 ### 6、核酸日期 **问题描述** 如果周一做核酸,周二显示核酸天数为 1 天,周三显示 2 天,以此类推,周六显示 5 天,周日显示 6 天。 小蓝在某一天做了一次核酸,请问他的核酸显示为几天。已知做核酸和查看核酸不是在同一天,而且相差不超过 6 天(显示的数为 1 到 6 之间的数)。 **输入格式** 输入第一行包含一个整数 s ,表示小蓝做核酸是周几。 s 为 1 到 6 依次表示周一到周六,s 为 7 表示周日。 第二行包含一个整数 t ,表示查看核酸是周几。 t 为 1 到 6 依次表示周一到周六,t 为 7 表示周日。 **输出格式** 输出一行包含一个整数,表示答案。 **样例输入** > 5 > 2 **样例输出** > 4 评测用例规模与约定 对于所有评测用例,1 < = s , t < = 7 。 **参考答案** 判断一下是不是同一周,如果是就直接做差,不是就加7再做差 ### 7、英文转换 **问题描述** 输入一个由小写英文字母组成的字符串,请将其中的元音字母(a, e, i, o, u)转换成大写,其它字母仍然保持小写。 **输入格式** 输入一行包含一个字符串。 **输出格式** 输出转换后的字符串。 **样例输入** > lanqiao **样例输出** > lAnqIAO **评测用例规模与约定** 对于所有评测用例,字符串的长度不超过100。 **参考答案** ### 8、充电器 **问题描述** 小蓝有一个充电器,可以使用不同的电压和电流充电。 给定充电器工作的记录,请计算在这个记录期间总共通过充电传输了多少电能。 **输入格式** 输入第一行包含一个整数 n , 表示记录的条数。 接下来 n 行,每行包含一个时刻 T 和两个非负整数 U, I,表示在时刻 T 充电电压变为 U(单位伏),电流变为 I(单位A)。最后一行满足 U 和 I 均为 0,在前面的行中也可能出现 U、I 为 0 的情况。其中时间表示为 HH:MM:SS 的格式,时分秒分别用两位十进制数表示(补前导零)。 输入保证时刻依次递增且在 00:00:00 至 23:59:59 的区间内,不用考虑跨过零点充电的情况。 **输出格式** 输出一个整数,表示总共通电的电能为多少焦耳,其中 1 焦耳等于 1 伏乘以1 安乘以 1 秒。 **样例输入** > 3 > 12:00:00 12 1 > 12:01:02 5 2 > 12:01:10 0 0 **样例输出** > 824 **评测用例规模与约定** 对于所有评测用例,1 < = n < = 100 , 0 < = U , I < = 100 1 <= n <= 100, 0 <= U, I <= 1001<=n<=100,0<=U,I<=100。 ### 9、全相等三角形 **问题描述** 给定一个字母矩阵,定义一个LQ三角形为某行中连续的几个字母、某列中连续的几个字母和一条45度的斜线中连续的几个字母组成的等腰直角三角形的边缘部分,其中每条边上的字母数量相等且至少为2 。 例如,对于下面的字母矩阵中,所有的字母 L 组成一个LQ三角形,所有字母 Q 组成了一个 LQ 三角形,所有字母 C 也组成了一个 LQ 三角形。 > AAAAAAA > ALLLLLA > ALQQLAA > ALQLAAC > ALLAACC > ALAACCC 如果一个 LQ 三角形边上的所有字母相等,则称为一个全相等三角形。以三个例子都是全相等三角形。 给定一个字母矩阵,请求其中有多少个全相等三角形。 **输入格式** 输入第一行包含两个整数 n, m,分别表示字母矩阵的行数和列数。 接下来 n 行,每行 m 个大写字母,为给定的矩阵 **输出格式** 输出一行,包含一个整数,表示答案。 **样例输入**1 > 3 4 > AAAA > ALAQ > ALQQ **样例输出**1 4 **样例输入2** > 6 7 > AAAAAAA > ALLLLLA > ALQQLAA > ALQLAAC > ALLAACC > ALAACCC **样例输出**2 23 **评测用例规模与约定** 对于50 % 50%50%的评测用例,1 < = n , m < = 10 1 <= n, m <= 101<=n,m<=10。 对于所有评测用例,1 < = n , m < = 100 1 <= n, m <= 1001<=n,m<=100。 **参考答案:** ### 10、最小下标 **问题描述** 小蓝有一个由大写字母 ABCDEF 组成的字符串 S ,长度为 n,字符串的下标依次为 0 到 n-1 。 小蓝按照如下方法生成一个无限长的字符串: 首先选定一个 0 到 n-1 之间的数,作为初始下标。 从初始下标开始,将下标对应的字符加入到字符串的结尾,将字符的序号(A到F依次对应 1 到 6 )与下标相加作为新的下标值,如果下标大于等于 n,将其对 n 求余。重复此过程,即得到无限长的字符串。 例如,对于字符串 ACDF,当初始下标是 0 时,生成的字符串为:ACACACACAC… 再如,对于字符串 DCBA,当初始下标是 1 时,生成的字符串为:CDDDDDDDDD… 给定小蓝的字符串 S,请问当初始下标为多少时,生成的字符串最小。 **输入格式** 输入一行包含一个字符串。 输出格式 输出一行,包含一个整数,为所求的下标,如果有多个下标满足要求,输出最小的那个。 **样例输入1** > DCBA 样例输出1 > 3 **样例输入2** > AAAA **样例输出2** > 0 **评测用例规模与约定** 令 ∣ S ∣ |S|∣S∣ 表示 S SS 的长度。 对于 30 % 30%30% 的评测用例,1 < = ∣ S ∣ < = 100 1 <= |S| <= 1001<=∣S∣<=100。 对于 50 % 50%50% 的评测用例,1 < = ∣ S ∣ < = 1000 1 <= |S| <= 10001<=∣S∣<=1000。 对于 70 % 70%70% 的评测用例,1 < = ∣ S ∣ < = 10000 1 <= |S| <= 100001<=∣S∣<=10000。 对于 80 % 80%80% 的评测用例,1 < = ∣ S ∣ < = 100000 1 <= |S| <= 1000001<=∣S∣<=100000。 对于所有评测用例,1 < = ∣ S ∣ < = 1000000 1 <= |S| <= 10000001<=∣S∣<=1000000。

