2020年十月蓝桥杯A组题目回忆&&口胡

更新:省一到手了,看来蓝桥杯虽然题目难,但是竞争还是不大的

一共五道填空和五道编程,前四道填空和前三道编程比较有把握,剩下的很虚,希望能进国赛orzzz

填空1

题意:输出1到2020之中,数字2出现了一共多少次。

题解:C语言及格就行;

填空2

题意:求分子和分母都在1到2020范围内的分数中,有多少个是既约分数(既约分数定义为分子分母的gcd为1)。

题解:C语言及格+会手写gcd就行;

填空3

题意:定义了这样一个蛇形走位的数阵,求第2020列的数字是多少。

题解:当做初高中那种数学填空题,手算一些等差数列就可以了。

填空4

题意:给出一个电梯那种数字8,如下图所示,在7个笔画(横或竖)之间选择一些点亮,要求点亮的笔画组成恰好一个连通块,求方案数。

题解:可以建图暴力枚举27种情况然后bfs或dfs判断,也可以直接用排列组合的方法计算。

填空5

题意20个圆和20条直线能把平面分成几部分。

题解:不会做,瞎写了个。

大题1

题意:给出n个学生的成绩,分别输出最高分、最低分、成绩均值(保留两位);

题解:C语言及格就行;

大题2

题意:首先介绍了八位数字表示日期,如2020年2月2日表示为20200202,现在给出一个八位数字表示的日期,保证合法且年份在1000至8999之间,分别求该日期之后的第一个满足以下条件的日期的八位表示并输出(分别输出两个):

1、八位表示下是回文串的日期;
2、八位表示下是ABABBABA的日期。

题解:不整花活,老老实实写模拟,其实码量还行也不是很费时间,大概80+行?

大题3

题意:对于字符串s,定义一个f(s)表示该串中出现恰好一次的字母的个数,现在给出一个字符串S,串长105,求其所有子串tΣf(t)

样例ababc输出21

题解:感觉是CF上常见的题目,把问题由“一个串内出现一次的字母有多少个”转化为“某个字母在多少个串中出现一次”,然后统计一下每个字母出现的位置推一下公式就可以做了。

大题4

题意:给定平面内的一个椭圆(可能是斜的),并给出一个三角形,求三角形和椭圆的面积交,坐标绝对值在1000以内,结果允许0.01的绝对误差。

题解:据群友说正解应该是把椭圆先挪到原点再压成圆,把这样的变换矩阵也应用到三角形上,然后求三角形和圆的面积交(自适应辛普森?)就是答案,但我也不知道为啥这样可以保证面积不变。

我的瞎搞做法是,随便把三角形两条边当做一个斜坐标系的坐标轴,3000等分,因此可以得到30002个三角形里的点,然后求落在椭圆里的点的个数,除以30002在乘以三角形面积就当做答案。这么做在样例上精度似乎还不错,但考虑到坐标范围,感觉多半要凉呀。

大题5

题意:给定一个数字V(V10000),请你给出一个逆序数恰好为V的字符串,多个答案优先输出最短的,多个最短的优先输出字典序最小的。

题解:从样例可以猜出,答案字符串必须是非严格单调递减的,比如fedccba这样的,根据这个性质,只要枚举每个字符出现次数就可以唯一确定一个字符串。

这样对于50%的数据(V100) 可以发现串长不超过15,所以就可以枚举各个字符出现次数,在C3015左右次运算得到答案,感觉有点慢,所以可以打个表。

100%的做法不太会,但可以注意到100%的串长也不超过200,所以基于上面的性质想出一个科学可写的O(n3)就可以过了(但我想不出来啊摔)。

posted @   炸鸡块君  阅读(414)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 25岁的心里话
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示