随笔分类 - NOIP、CSP普及组
摘要:传送门 传送门 判断节点u的子树是否是对称二叉树的方法: 判断hash1[l[u]]是否等于hash2[r[u]]。 其中hash1中存的是按照根左右的顺序的哈希值,hash2存的是按照根右左顺序的哈希值。 当两个hash值相等时,即为对称二叉树。 单哈希和双哈希貌似都不太稳定,而用自然溢出即可AC
阅读全文
摘要:传送门 第一年noip的考试题哇,满满的回忆 当年就因为这个题输出-1骗了5分拿了普及一等 解题思路 先二分答案,很显然答案满足单调性。 然后就是一个从限定范围转移过来的线性dp,用单调队列维护一下即可。 判断-1可以根据所有的正数加起来是否大于等于k。 细节还是很多的: dp数组初始化为一个很小的
阅读全文
摘要:##传送门 ##解题思路 比较巧的一道题。 把化简一下得,这要求x和z一定要同为奇数或偶数。 所以很明显我们首先要对他们分类: 按照奇数偶数点 按照颜色 这样就化成了若干个集合,而我们需要快速求出每个集合对答案的贡献。 把数学式子列一下: \(\sum_{i=1}^
阅读全文
摘要:身为一名高中生,却还是不知廉耻地做了一遍普及组的题目,体验一把AK的感觉 T1 优秀的拆分 传送门 T1还是一如既往的水。 根据题意,奇数直接-1,偶数就从一个很大的2的幂开始枚举,n比这个数大就输出这个数并且n减去这个数,然后这个数/2。 #include<iostream> using name
阅读全文
摘要:传送门 解题思路 首先想暴力做法: 每一次比赛前都sort一遍,然后两两比较,总复杂度为O(R*(n+2n*log(2n))),最大约为1.5*10^8,而且会跑满,所以需要优化。 怎么优化呢? 我们发现这样一条性质: 假设排好序的序列为1,2,3,4(1>2>3>4)。这时进行比赛(1和2,3和4
阅读全文
摘要:传送门 解题思路 很容易想到用最短路来解决这一道问题(题解法),因为两个点之间可以互相无限走,所以如果到某个点的最短路是x,那么x+2,x+4也一定能够达到。 但是如何保证这是正确的呢?比如说到某个点的最短路是x,为什么不可能走一下弯路,是某一条路径的长度是x+1或者x+3或者x+5呢? 所以就用到
阅读全文
摘要:传送门 解题思路 本题首先要明白,在每一天时,最优策略是先进行操作2(卖),再进行操作1(买),才能是利益最大化。 本题很显然当只有两天时,是一个完全背包,就是把当日价钱当做体积,把明日价格和今日价格的差作为价值,跑一边完全背包即可。时间复杂度O(TNM) 然后我们考虑满分做法——我们用dp[j]表
阅读全文
摘要:传送门 解题思路 先把所有的数据读下来。 对于地铁,答案直接加,然后把编号放入一个数组a内。 对于公交车,从前往后枚举a数组,然后找到出现最早的且符合价钱大于等于公交车的价钱,然后把这个数删除(变为0)。 然后再考虑有效期是45分钟,为了优化时间,我们可以每一次把数组看做一个队列,当a[first]
阅读全文
摘要:传送门 洛谷改域名了QAQ 解题思路 没什么好说的,一道红题,本不想发这篇博客 ,但还是尊重一下CCF吧QAQ,怎么说也是第一年CSP呢! 用getchar一个个读入、判断、累加,最后输出即可。 不过要注意getchar是包含在cstdio库里的。 AC代码 1 #include<iostream>
阅读全文
摘要:传送门 解题思路 第一种: 对于选i家,很显然,a值前i-1家的一定会选,所以只需要考虑最后一家的选法。要么是选择a值第i大的(就不管s了),要么选择剩下的中s最大的。 我们把每一家的情况(s和a)存入几个结构体中,按照a的值从大到小排序,再用sum求出a的前缀和,用maxs[i]表示前i家中最大的
阅读全文
摘要:一道水题,但看到好久没有发博客了,再一看是一道noip普及组t4,就做了。 题目链接 https://www.luogu.org/problemnew/show/P1049 解题思路 一道裸的01背包,注意价值和重量是一个东西,且最后输出剩余的体积。 随随便便二维就AC了,懒得写一维。 AC代码 /
阅读全文
摘要:题目链接 https://www.luogu.org/problemnew/show/P1030 模板题 先讲一下二叉树的遍历 二叉树的遍历 分类 性质 求法 分为三类: 我们可知: **序遍历实际上是指根节点的位置 无论哪种遍历顺序,左子树都在右子树的前面 在前序遍历中,第一个点是根节点 在后序遍
阅读全文
摘要:题目链接 https://www.luogu.org/problemnew/show/P1045 题目大意 本题目的主要意思就是给定一个p,求2p-1的位数和后500位数。 解题思路 首先看一下数据范围,我们不难发现此题必须要用高精度来做。但是每一次高精度乘法的复杂度是o(n)的(n为数字的位数),
阅读全文