摘要:
只需扣(线段树)模板2就可。。 线段树模板2: #include<iostream> #include<fstream> #include<cstring> #include<string> #include<algorithm> #include<cstdio> #include<cmath> # 阅读全文
2022年6月4日
2022年5月28日
摘要:
【P1050 [NOIP2005 普及组] 循环】 思路: 可以从小到大一位一位递推出前 kk 位的循环节长度。 假设已经求出前 k0k0 位的循环节长度 t0t0,那当我们求前 k0+1k0+1 位的循环节长度时, 只需枚举 n×nt0,n×n2t0,n×n3t0,…,n×n10t0n×nt0,n 阅读全文
摘要:
【P1013 [NOIP1998 提高组] 进制位】 思路:(20分) 字母所代表的数字不重复,所以进制数l一定大于等于字母个数n−1,即l≥n−1 那么到底是几进制?可以考虑枚举,注意数据范围(3≤n≤9),如果可以枚举进制数l,判断在每个进制下的加法表是否合法,判断加法表考虑一下暴力 O(n2) 阅读全文
2022年5月27日
摘要:
【P1027 [NOIP2001 提高组] Car 的旅行路线】 思路: 单源最短路问题,首先输入数据只给了每个城市的三个点的坐标,第四个点的坐标必须自己思考,但是这四个点的相对几何位置不固定,因此需要用迭代法不断交换三个点的位置:A-B-C --> B-C-A --> C-A-B......直到三 阅读全文
2022年5月26日
摘要:
【P1005 [NOIP2007 提高组] 矩阵取数游戏】 思路: 用dp[i][j]代表区间变为【i,j】时,获得的最大分数当区间变为[i][j]时,一定是由【i-1,j】或者是[i,j-1]这两个符合条件的方程式中转移过来的,在第m-(j-i)-1次i取走了当前值。 因此状态转移方程就是 dp[ 阅读全文
2022年5月21日
摘要:
【P1242 新汉诺塔】 思路:91分,没有全对。。。 要按照从大到小的顺序使圆盘归位,那么,我们每次使大盘子归位的时候,显然,其上面的小盘子需要让它们移开。显然,这里就和汉诺塔一致了,但我们需要一个中转,如何确定中转,就是除了from和to之外的内根柱子,即6-from-to,那么这个问题就好解决 阅读全文
摘要:
【p1268 树的重量】 先做一个约定[i,j]表示从i到j的距离我们可以先从n=2,也 就是最简单的情况来切入这道题对于n=2,答案显然是[1,2] 考虑n=3,三这个节点一定是插在1与2两个节点之间的我们可以发现,3节点的插入使得,树的权值增加了([1,3]+[2,3]-[1,2])/2 (即紫 阅读全文
2022年5月14日
摘要:
【P1120 小木棍】 代码是87分,说明问题大得很。这是我的思路,不知哪错了: 由于初始木棍要相等,所以可以对每一个可能长度进行判断,大到小排序,dfs判断能否将木棍全部用上。 #include <iostream> #include <stdio.h> #include <queue> #inc 阅读全文
摘要:
【P1021 [NOIP1999 提高组] 邮票面值设计】 AC不了,可能思路过程出错了。。 #include<iostream> #include<iomanip> #include<algorithm> #include<cmath> #include<cstdio> #include<cstd 阅读全文
摘要:
【P1241 括号序列】 题目理解难度大,要求是对每一个右括号找到最近的左括号。 如果不匹配,比如:右括号‘)’,但是找到的左括号是'[')或者没找到就放弃。也就是说,题目是要求首先满足找到一个左括号这个条件。 再判断是否匹配,如果匹配的话,在当前位置做个标记,有标记的直接输出,没有标记的就输出一个 阅读全文