十一届蓝狐杯的总结,顺带一点解题报告
今年的省赛结束了,可怜的我只搞出了6个题,曾经励志拿金的男人只分配银一枚,不胜惋惜。
从这样的状态来看,明显是不行的,这次比赛能看出我们队的默契还是有,有人看题,有人出思路,然后我就当苦力敲代码,唉~还好哥是处男手速过关。但是这次比赛也有明显的问题,最最最严重的就是模版问题,一个半小时的时间卡在那个判断多边形是否有重叠面积的题,由于准备了模版,是判断一个点在多边形内还是边上还是外面的模版,然后。。这只是在网上拷贝的模版,然后问题就慢慢体现出来了,首先对于码义工我来说,风格不同,我用了将近二十分钟才慢慢反应过来,但是却不是很适应别人写代码的那个风格,然后就是调试,因为不是自己写的模版,并不能很明确地对其进行操作,比如其中出现一个小问题需要调试,那么就不好搞了,只能慢慢把代码去理解一遍,瘦敲都敲了半小时的代码啊,这时间都足够看几章小说了Y0Y。
由于这次比赛的题目太过于简单,反倒让我想要质疑这种比赛拿奖的质量,不过那天正好赶上了啤酒节,我倒是喝爽了。。
然后把一些题讲讲:
A、Aerial Tramway :表示从始至终对这个题没印象,因为我是不看题的,我们看题的队员也没主动来跟我讲这个题的题意,所以这是被忽略的题之一,不值得做起来怎么样,感觉是纯种数学推论。
B、大还是小:是说让你输入两个数,比较他们的大小或者相等,当然我当时没仔细去看题,就觉得是跟航电那个a=b的题一样,这题只是说了整数部分和小数部分都非空,而且不会有前导零,所以去掉一下操作之后就变成了首先确定小数点的位置,然后去掉小数部分的后缀零,然后就分成整数和小数两部分比较。
C、多边形的公共部分:就是这个题,坑爹到死,我表示我是没花心思去思考这个题的,但是题意还是讲一下,就是说给你输入两个多边形,让你判断他们是否有公共面积,也就是说他们是否有重叠,这题就是让你判断一个点在一个多边形的位置,输入第一个多边形并记录下来,然后第二个多边形就只要依次对比它的顶点在第一个多边形的位置,如果有一个点在第一个多边形之中,那么一定有重叠面积,然后就是另一种情况,那就是有两个或者以上的点在不同的边上,比如是两个点在一条边上,那么这两个多边形只是共用了一条边,并没有重叠,但是两个点在不同的两条边上面,这两点之间是有两条路径相连的,因为是简单的多边形,(我理解的是凸多边形),所以这两条路径一条在第一个多边形的外面,一条在里面。
D、错误的算法:输入一个矩阵,告诉你一种计算一行一列数值总和最大的方法“取值最大的那一行和取值最大的那一列求出的总和就是最大的这个”,也就是说求出每行的值,取出最大的那个,求出每列的值,取出最大的那个,然后把他们包含的元素值加起来就是最大的,明显这是个错误的,所以要求你判断对于某一组测试数据,这个算法运行的结果是正确的还是错误的。因为只有最多25W个点,所以直接暴力枚举以点为中心的方案,但是你要提前把每个点在的行和列的值打表,不然会超时。
E、简单的土伦问题?:给你个二维矩阵,每个点可能是带权值的1~100的数字,或者是表示不能到达的“ * ”,然后第一次要你求A(r1,c1)到B(r2.c2)的最小权值,也就是说从A到B的路径上的权值总和最小,第二次要你求的同样是最小权值,但是要求走的下一步的方向不能和当前相同,就是说当前点往下走,那么到了它下面那个点就不能继续往下走,只能往其他三个方向。首先,第一次搜索的话直接广搜,用一个数组来标记二维表的当前权值总和,就是说从A点到这个点最小的权值总和,判断下一点能不能走就只要看它是否越界和走到那里的当前权值总和是否更小,搜索到B点还不能停止,要全部方案都搜索完。然后第二次搜索就在记录当前点的权值上加上四个方向标记,如果方向相同,每一点走下另外一点一定要带着走过去的方向,然后跟那个点中和这个方向相同的最小权值比较大小,然后入队继续搜索。
F、阶乘除法:输入k表示k=n!/m!,n尽量小,没有的话就输出那堆英文。。这个题除了k=1,都有可以输出的,因为除了k=1,其他的我最少都可以写k!/(k-1)!,然后是怎么求这个n和m,而且n要尽力小,这里你会发现,n!和m!除去公共部分就是从m+1一直乘到n,这一小段的因子的个数是n-m,哟~有木有发现很经典?我就以因子个数为标准,因为他一定是连续的,所以我们以个数来打表,dd[x][y]表示个数为x,从y开始的一小段,比如dd[2][1]=1*2,dd[5][3]=3*4*5*6*7,然后说是要保证n尽量小,那么你想啊,都是连续的一段,而且相乘得到的值都是k,肯定是长度越长,结尾的那个数字越小啊,所以就从长度最长那个开始往下面遍历,然后相同长度的情况下,这些段的总和是单调的,比如长度为3,1*2*3<2*3*4<3*4*5...这些还是没问题吧?所以对于每一个长度段我们可以用二分查找,不然天知道它会不会超时呢。有一个很需要注意的,因为14!是60亿,大于题目要求的10亿,所以长度我们最多弄14就行了,而长度为2的数组里面只需要标记到10W,因为10W*(10W-1)大于10亿,然后便利按照长度从大到小去一次二分找最接近k的,如果找到就退出,如果不能找到就输出k和k-1。
G、Graph Guessing:一眼都没看过,不知道题意,更不知道做法。
H、聊天止于呵呵:就是每行输入两个人的对话,然后判断他们最后那次对话中,有多少个是出现了只包含he组成的并且个数不小于2的,然后输出这个数量在总对话中的比率。每个对话时包括两个人,还有对话内容,所以最后那个对话应该是包含这两个人的最后输入的那次,所以我们把输入记录好,然后从下面往上面循环,因为题目简单,人名就是大写字母,所以最多26个人,开个二维数组用来标记两个人是否已经出现过最后对话了,因为我是从后向前循环的,然后是在对话中找hehe串,只由he组成,而且he的个数不小于2,所以he不能算满足条件的,hehehe还有hehe还有HEhe等等是可以的,不区分大小写,而heheh这种是不可以的,因为只有两个半he,然后每找完一个就标记着两个人之间的对话已经出现最后一句了,这样是为了省略掉出此之外两人的其他对话,不然会超时的。
I、Internet of Lights and Switch:这个题是我坑的,我看见30W的数据就吓尿了,哈哈,没经过仔细的分析,所以没发现这题很水,就是依次告诉你n个灯泡控制的灯,然后要你求a到b这些开关中可以连续按一小段范围内的灯炮,使最初全开着的灯全部关掉,最多50个灯泡,long long是2^63,所以用二进制压缩去弄,用异或,50个1连续异或一小段,如果能变成50个0,那么表示这小段可以使这些灯泡集体变一下状态,然后直接输入啊。
J、又一道简单题:输入一个四位数,要你改变一个数字让它变成某个数的平方x,不是四位数么?只要满足有三个位上面的数字和x上对应的位的相同,那么就是可行的,而100*100=10000,所以最多是100的平方,直接打表,然后暴力匹配就行了。
K、Keep Fit!:没看,三道没了解一丁点儿题意的题之一。。。
对于后面的区域赛,对比一下以前的,感觉很轻松啊,一题就是铜,但是。。。题难啊,要碰到自己对口味的,一眼就有想法的,可能很难,这时候要看自己的水平了,自认为水平不错,但是的确不是很高,所以这些天得效仿学长那样狠狠对待自己,天天总结,每天要像对待明天去比赛一样去整理自己的模版,然后把自己没把握的,不熟悉的好好学学,毕竟模版不是自己的,就算是自己写的模版,因为这个理由而久久不复习,那么到时候会很难上战场的,所以最好是不用模版,自己多些,多熟练,这样绝对不会有错。有了方案,下面就看行动了,行动之后才很经过比赛看成果,没有行动,比赛资格都没有,更别说其他,acm就是要一种态度,一种信念,不能支撑自己往下走,那么这对于你来说就是一条不归路。
十一届蓝狐杯的总结,顺带一点解题报告相关推荐
- 第十届“图灵杯”NEUQ-ACM程序设计竞赛个人赛解题报告
第十届"图灵杯"NEUQ-ACM 题目链接 解题报告 D 文稿修订 思路 代码 F 吃包子 思路 代码 G 数字鉴定 思路 代码 H 线性变换 思路 代码 I 试题排版 思路 代码 ...
- 15行代码AC_ 【蓝桥杯】兴趣小组(解题报告+思考)
励志用更少的代码做更高效的表达 问题描述: 为丰富同学们的业余文化生活,某高校学生会创办了3个兴趣小组 (以下称A组,B组,C组). 每个小组的学生名单分别在[A.txt],[B.txt]和[C.tx ...
- 吉首大学第八届“新星杯”大学生程序设计大赛部分解题报告
问题 A: 组合数 题目描述 求组合数C(N,M),以及C(N,M)因子个数. 输入 N和M,其中0<=M<=N<=50,以EOF结束. 输出 该组合数结果 样例输入 Copy 3 ...
- 【B类比赛】 第十一届蓝桥杯 省国赛经历
Now 拿起键盘写下这段话的时候,已经是第12届蓝桥杯省赛前的一天了(2021.4.17). 距离上次蓝桥杯省赛正好6个月了. 如今的我仍在ACM里,这半年经历了挺多事情,退ACM已经势在必行,且行且 ...
- 第十一届蓝桥杯省赛真题——单词分析
第十一届蓝桥杯省赛真题--单词分析 单词分析: [问题描述] 小蓝正在学习一门神奇的语言,这门语言中的单词都是由小写英文字母组成,有些单词很长,远远超过正常英文单词的长度. 小蓝学了很长时间也记不住一 ...
- 2020年软件类第十一届蓝桥杯 省赛 python组(人生苦短,我用python)
2020年软件类第十一届蓝桥杯 省赛 python组 题解 文章目录 2020年软件类第十一届蓝桥杯 省赛 python组 题解 试题 A: 门牌制作 试题 B: 寻找 2020 试题 C: 跑步训练 ...
- 蓝桥杯青少年创意编程python初级考察内容_第十一届蓝桥杯青少年创意编程scratch初级组编程题详解...
点击上方"启迪少儿"即可关注 今年的12月15日是第十一届蓝桥杯青少赛的第二次选拔赛,安徽.北京.福建.广东.广西.河北.黑龙江.湖南.吉林.江苏.江西.辽宁.宁夏.山西.陕西.四 ...
- 2020十一届蓝桥杯国赛二等奖Java B组
大家觉得写还可以,可以点赞.收藏.关注一下吧! 也可以到我的个人博客参观一下,估计近几年都会一直更新!和我做个朋友吧!https://motongxue.cn 文章目录 参考博客https://blo ...
- 十一届蓝桥杯c组--省一国二
文章目录 专科生咋样准备蓝桥杯 以下我对于<数据结构与算法>的认识 对于专科生 零基础怎样去备赛蓝桥杯 一些细节 要注意 二战结束了,两次国二,呜呜呜 不玩了 拜拜 专科生咋样准备蓝桥杯 ...
- 第十一届蓝桥杯 2020年国赛真题及解析 (Java 大学B组)
第十一届蓝桥杯 2020年国赛真题 Java 大学B组 A 美丽的 2 B 扩散 C 阶乘约数 D 本质上升序列 E 玩具蛇 F 蓝肽子序列 G 皮亚诺曲线距离 H 画廊 I 补给 J 质数行者 所 ...
最新文章
- 犹豫了许久,还是写个年总结记录一下吧
- Selenium测试专项三班隆重开班
- linux软中断分析,linux操作系统下的软中断问题分析_linux教程
- 设计模式--适配器(Adapter)模式
- coreldraw的线条怎么变成圆头_别再穿到处撞的小白鞋了,这五款春夏小皮鞋,不管怎么搭配都好看...
- 【算法知识】详解堆排序算法
- C语言使用1到9求出所有k个数字的所有组合的算法(附完整源码)
- mysql 错误编码_【分享】MySQl操作系统提示错误编码
- python获取图片某像素点位置_如何在python中获取图像中指定区域内的所有像素坐标?...
- vagrant:修改Linux网络设置
- zebra探秘(一)
- 100~200以内素数
- python矩阵转置_矩阵转置python
- Minimum-Cost Spanning Tree
- 英语计算机四级成绩查询入口,全国计算机四级考试成绩查询入口
- NMOS和PMOS的电路符号记忆方法
- mp3 编辑 linux,Linux_Ubuntu 32/64位安装音乐标签编辑器Kid3的方法, Kid3能够修改mp3中ID3的tag标 - phpStudy...
- 分清概念十分重要系列之--关于GPS,你需要了解这些
- ArcGIS Server中的各种服务
- VIL-SLAM论文翻译:Stereo Visual Inertial LiDAR Simultaneous Localization and Mapping
热门文章
- pythonidle怎么设置_Python IDLE基本设置
- kali2020.4中文安装后,fcitx配置框中空白,无法添加输入法,请做如下操作尝试修复
- Leetcode每日一题——T32. 最长有效括号(难)——栈
- 【渝粤教育】电大中专中药炮制学作业 题库
- ubuntu18.04 安装 QQ
- nofollow标签的写法与作用
- 单页应用请求服务器,单页Web应用
- 微信公众号无服务器 外部链接,新技能Get丨微信公众号如何插入外部链接?
- stay foolish, stay hungry
- leetcode 799. 香槟塔 (Champagne Tower)