【标程】黑龙江大学程序设计竞赛(重现赛)标程

首先解释下题目为何这么简单,因为当时出题时被要求针对非ACM选手,越简单越好...... (然后难度被削的不像个程序竞赛了)
标程可以在提交里,搜索我的名字 I_LOVE_RQZY_OOO 看到.
A题
本来每次询问N范围是2^31-1,但作为签到题,就改了下范围。
(1) 可以暴力生成这个串,然后直接输出即可。
(2) 可以二分一下是第几个串,或者开根 ,然后对26取个膜即可

B题
对于这个公式化简下,推个前后缀和即可

C题
N和N+1互质,反证法易证

D题
(1)由于ST,ED很小,直接差分即可。
(2)甚至线段树维护区间最大值,区间加。
(3)如果ST,ED很大,可以先排序,然后multiset里维护每个任务结束时间,每次查询multiset里第一个小于当前st的那个数即可。

E题
看到字符串总长度5000直接枚举相邻,暴力即可O(N^2)。
用两个hash维护下,正向哈希,反向哈希(大小写互换的), 然后二分check下答案。
其实本题也可以用manacher算法,改变下manacher算法匹配的规则即可,线性。

F题
比较赤裸的线段树裸题。护卫区间1的个数和区间GCD.
更新时,如果某一段区间1的个数等于区间长度,则不向下更新,否则暴力更新。
可以证明每个数开多少次变为1,是log2(log2(N))的级别。
所以复杂度就是O(N*logAi*logN*loglogN)

G题
可以看成一堆石子,每个人轮求取,先取完的输,bash博弈,也可以倒推观察下sg函数。

H题
每个格子(i,j)的最后一天被背就是i行的最大值或者第j列最大值。

I题
dp[n] = min(dp[n], dp[d] +  (n-d)^2)  n是d的倍数。

J题
假设i < j,展开下式子即可。维护四个最值

K题
贪心凑9




全部评论

相关推荐

2025-11-25 09:41
已编辑
Java
程序员花海_:实习和校招简历正确格式应该是教育背景+实习+项目经历+个人评价 其中项目经历注意要体现业务 实习经历里面的业务更是要自圆其说 简历模板尽可能保持干净整洁 不要太花哨的
投了多少份简历才上岸
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务