CCF NOI plus 201(7)6 初赛题 解题报告
GTMDCCF。
今年这题怎么评价?
去看我在知乎的回答:https://www.zhihu.com/question/66621360/answer/244222388
挨个说一遍。
单项选择题
T1.CCF有毒,我一个cpp选手有什么义务去关注pascal的存亡问题?挺让我震惊的,虽然我知道这个时间。
2022年。
T2.补码,考前正好复习到了这个考点,这个数是10101011,显然它是负数,所以补码等于反码+1.
反码为除符号位外按位取反,这样就得到了11010100,补码就是11010101,-(2^0 + 2^2 + 2^4 + 2^6) = -85.
T3.说实话一开始拿到这个题我是懵逼的,但其实一想发现,16位,16位。。嗯,8个二进制位是1byte,这样一个16位是不是2啊。。
那我试试1600*900*2/1024?噫,还真算出来了。
T4.丧心病狂的推建国日的星期,我反正没推出来。。查日历可得是星期六。
T5.好题。有一个连通图有n个节点m条边,问至少删掉多少边会使这个图变成一棵树。
如果你代数求值会在A和B之间徘徊不定。但是 你可以想啊,树有什么性质?一棵n个点的树有n-1条边啊,那不妨设我们最少需要删掉x条边,然后有m-x = n-1,算出x是m-n+1就好了。
T6.这个递推关系式比去年那个稍微好看点。。
之前我貌似做过一个T(n) = 2T(n/2) + n的,我还记得答案,于是猜测是不是有相似的性质。。这个题,T(n) = 2T(n/2) + nlogn,前边那个递归应该是logn,两边乘起来就是C选项,遂选之,居然对了。
T7.后缀表达式,考之前有好多人问我怎么做。。。
我记得老师用的方法是画树,这个太麻烦了。。
其实只需要按照每个操作加括号就好,保证每个括号里只有一个运算符外加两个数,然后把符号相应的移到其所在的右括号之前,删掉所有括号就是答案。
T8.我不会啊
T9.这个好像是一个排列组合。。我当时算错了。。。应该选120但我选的96。。。
T10.说实话这题做错也有我方法有误的原因。本身这个是一个递推式可以求通项公式然后再看无限逼近的。。。
我居然想到了画图。。。画图发现也是无限逼近,但毕竟草图不精确,鬼知道我定到的点是0.666还是0.618。。
T11.卧槽这题我也做错了?应该是2n-1。。
T12.这题做对了。。。
强行程序填空。。。从去年开始就是这样,保不准明年还会有?
从一个地方就能看出来,c语句是给n赋值,而下面正好对应的是对n值的判定,那自然是第三个空填c语句,只有D选项是,选D。
T13.原来是动态规划的老祖宗数字三角形。这题最早出现在IOI1994,当时难倒了不少人,现在已经成最简单的例题之一了。。。时代变化真快
当时求的是最小路径,这个求最大路径,还不都一样。。
选A。
T14.人教版高中数学选修2-3第二章,概率有关的内容。我就用平时做题的做法做出来了,挺简单的。
设事件A = “第一个航班准点”
设事件B = “第二个航班准点”
设事件C = “第三个航班准点”
设事件D = “小明旅行成功”
则有P(A) = 0.9 , P(B) = 0.8 , P(C) = 0.9.
可以推出 P(A的对立面) = 0.1 , P(B的对立面) = 0.2.
(X的对立面应该写作X上边一道横线,我不知道这样的符号怎么打出来。。。)
由题意可知,第1个航班晚点,第2个航班准点,旅行失败;且第2个航班晚点,第3个航班准点,旅行失败
则可以推出P(D的对立面) = P(A的对立面)P(B) + P(B的对立面)P(C) = 0.08 + 0.18 = 0.26.
则答案P(D) = 1 - P(D的对立面) = 1 - 0.26 = 0.74.
挺简单吧。
T15.人教版高中数学选修2-3第二章,数学期望有关的内容。
我们知道,期望 = 均值*概率。
我们知道乒乓球平均喷出速度为2个/秒,喷三分钟平均会出2 * 180 = 360个球
小朋友只能坐在某一节车厢里,一节车厢占整个场地面积的二十分之一,只有球落到车厢里面小朋友才能捡到。
由几何概型的相关知识,接到球的概率就是二十分之一。
所以期望值 = 360 * 1/20 = 18. 压轴题并没有想象中那么难,反倒挺简单。
不定向选择题
T1.最坏情况下快排会退化, 归并和堆排序不会退化。
T2.考察栈的常规操作,挨个模拟一下就好。
T3.希尔排序是什么?这题选D。
T4.QAQFortran不是面向对象的!!!!!!!!!!!!!!!!!!!!!!!
T5.GTMD王选,出题人你给我出来。这题选BD。
问题求解
T1.变换格子,看起来没法下手其实挺简单,瞎jb试试就知道是3步,不可能会有比3步更优的算法了。
T2.传说中的最小割。最小代价是4,挨个试总能试出来。不同的方案数其实我也是查的,少查了两种情况。。
读程
T1.一道常规递归题,woc这我也做错了。。。我菜爆了我退群吧。。。直接多算了一个10。。。。答案是15.
T2. 鬼知道这是http://www.cnblogs.com/OIerShawnZhou/p/7449299.html
T3.第三题是归并排序求逆序对,本来这题不该错,因为我初赛之前刚做了一个求逆序对的题。这个答案是8但我查出来是7。。。
结果我数反了。。
T4.好像是数论。。而且据说第二个和第三个的测试数据要循环几十万次。。。woc。。
程序填空
依照惯例,正确的答案我会标成红色。
T1.说好的不考高精度除法呢?说好的这东西不在NOIP范围之内的呢?
没办法,凭着感觉走吧。。。
我真不会这个所以。。分析不出来。。
第一空是p[0] 第二空是 rest< q 第三空是 rest / q 第四空是 rest % q * 10 + p[i] 第五空是 rest % q (我r我居然又写错了)
T2.惊了,这是拓扑排序。
对BFS了然于心的我很快就把这题一遍做出来了。
第一空的用途是记录入度,方便以后查找入度为0的点。能很快想到degree[b]++。
第二空所在的循环是用来把所有开始时入度为0的点入队的,那这个判定条件肯定是判断某个点是不是入度为0,那么就是 degree[i] == 0 了。
第三空就是拓扑排序的主过程了,是一个裸的bfs。这里第三空所处的环境是程序在扩展节点的时候发现一个合法点,后文也明确表示如果这个点的入度变成0就会入队,那应该不难会想到这个空填的应该是“删边”操作,即让这个点的入度-1,那么就是degree[i]--了。
第四空有人看不出来吗?可能有人真的看不出来,要知道bfs每次都是要弹出队首的,但前面的代码没有写这个操作,那自然第四空是需要做这个操作的,否则bfs就结束了。。
让队首+1不就相当于原来那个数弹出来了么?所以head++。
第五空就是去寻找最长路了。自然程序会把求得的答案放在len[a]里,我们要更新ans以便于输出,所以这里的判断条件应该就是,如果当前求得的这个值比ans大,那就让ans更新为这个值。
所以,len[a] > ans 。
47.5分。。。。。应该。。。。不会。。。。出事。。。。吧。。。。吧。。。。吧。。。。
我。。。很。。。慌。。。张。。。啊。。。。
CCF NOI plus 201(7)6 初赛题 解题报告的更多相关文章
- 2021字节跳动校招秋招算法面试真题解题报告--leetcode19 删除链表的倒数第 n 个结点,内含7种语言答案
2021字节跳动校招秋招算法面试真题解题报告--leetcode19 删除链表的倒数第 n 个结点,内含7种语言答案 1.题目描述 给你一个链表,删除链表的倒数第 n 个结点,并且返回链表的头结点. ...
- 2021字节跳动校招秋招算法面试真题解题报告--leetcode206 反转链表,内含7种语言答案
206.反转链表 1.题目描述 反转一个单链表. 示例: 输入: 1->2->3->4->5->NULL输出: 5->4->3->2->1-> ...
- Codeforces Round #256 (Div. 2/A)/Codeforces448A_Rewards(水题)解题报告
对于这道水题本人觉得应该应用贪心算法来解这道题: 下面就贴出本人的代码吧: #include<cstdio> #include<iostream> using namespac ...
- 洛谷 P4148 简单题 解题报告
P4148 简单题 题意 维护单点加与矩形求和,强制在线 说明 \(n\le 500000,m\le 200000\),\(4000ms / 20MB\) kd-tree 复杂度我不懂 是一颗平衡树, ...
- 洛谷 P1072 Hankson 的趣味题 解题报告
P1072 \(Hankson\)的趣味题 题目大意:已知有\(n\)组\(a0,a1,b0,b1\),求满足\((x,a0)=a1\),\([x,b0]=b1\)的\(x\)的个数. 数据范围:\( ...
- 雅礼集训 Day5 T3 题 解题报告
题 题目背景 由于出题人赶时间所以没办法编故事来作为背景. 题目描述 一开始有\(n\)个苹果,\(m\)个人依次来吃苹果,第\(i\)个人会尝试吃\(u_i\)或\(v_i\)号苹果,具体来说分三种 ...
- Noip2018普及组初赛试题解题报告
解题思路: 一.单项选择题 (答案:DDDBBAAAABABBBB) 1.除D外,其余均为输入设备. 2.除D外,其余都等于(617)10 ,D选项为(619)10. 3.1MB=1024KB=102 ...
- leetcode 201. 数字范围按位与 解题报告
给定范围 [m, n],其中 0 <= m <= n <= 2147483647,返回此范围内所有数字的按位与(包含 m, n 两端点). 示例 1: 输入: [5,7] 输出: 4 ...
- CCF NOI系列活动
NOI-全国青少年信息学奥林匹克竞赛全国青少年信息学奥林匹克竞赛(NOI)是国内信息学领域内面向中学生的最高水平的大赛,每省派经选拔产生的选手(其中一名是女选手)参加,NOI每年在不同的省市举行. N ...
随机推荐
- BZOJ2004: [Hnoi2010]Bus 公交线路
题目:http://www.lydsy.com/JudgeOnline/problem.php?id=2004 状压dp+矩阵乘法. f[i][s]表示从第i位至前面的i-k位,第i位必须取的状态. ...
- codeforce 367dev2_c dp
codeforce 367dev2_c dp 标签: dp 题意: 你可以通过反转任意字符串,使得所给的所有字符串排列顺序为字典序,每次反转都有一定的代价,问你最小的代价 题解:水水的dp...仔细想 ...
- cdn和反向代理
都是用来加速网站访问速度 cdn和反向代理的基本原理都是使用缓存,区别在于cdn部署在网络提供商的机房,使用户在请求网络服务时,可以从距离自己最近的网络提供商机房获取数据:而反向代理则部署在网站的中心 ...
- CMD命令操作MySql数据库详解
第一:mysql服务的启动和停止 1. net stop mysql 2. net start mysql 第二:登录 mysql –u用户名 [–h主机名或者IP地址] –p密码 例如:mysq ...
- RegExp对象的三个方法
RegExp 对象有 3 个方法:test().exec() 以及 compile(). test( ) test()方法检索字符串中的指定值.返回值是true或false. 例子: 因为字符 ...
- Thinkphp 3.2中文章详情页的上一篇 下一篇文章功能
额 简单2句话解释下 获取上一篇文章的原理,其实就是以当前文章的id为起点进行进行查询,例如id=5的文章 select * from article where (article_id<5 ...
- 如何把本地项目上传到Github
作为一个有追求的程序员,需要撸点自己的开源项目,虽然我现在只是在学着造轮子,但这并不影响我成为大神的心. Github是基于git实现的代码托管,很多程序员在上面托管自己的开源项目,我使用Github ...
- 个人Vue-1.0学习笔记
dVue.js是类似于angular.js的一套构建用户界面的渐进式框架,只关注视图层, 采用自底向上增量开发的设计. Vue.js的代码需要放置在指定的HTML元素后面. 关于Vue的数据绑定: 例 ...
- 那些年~~~我们的C#笔试内测题目
<深入.NET平台和C#编程>内部测试题-笔试试卷 一 选择题 1) 以下关于序列化和反序列化的描述错误的是( C). a) 序列化是将对象的状态存储到特定存储介质中的过程 b) 二进制格 ...
- Java数据持久层框架 MyBatis之背景知识一
对于MyBatis的学习而言,最好去MyBatis的官方文档:http://www.mybatis.org/mybatis-3/zh/index.html 对于语言的学习而言,马上上手去编程,多多练习 ...