摘要: 题意:给一个环和多个区间,且不存在被包含区间,求在已选定第 i个区间时( i 属于 ( 1,n ) ),总共需要多少段区间才可将整个环给覆盖完; 解法:贪心+倍增; 1.贪心;区间覆盖问题的较常见的一个解决思路就是按端点排序,如果是环的话,还要断环为链; 1.贪心;题目中说到不存在被包含区间,即不存 阅读全文
posted @ 2019-09-18 20:30 hfutgy 阅读(252) 评论(0) 推荐(0)
摘要: 题意:给一棵度数为 0或 2的二叉树,求有 n个节点的深度为 k的二叉树的方案数; 解法:DP; 1.DP;我们可以设 f [ i ] [ j ] 表示有 i个节点的深度 <= j的二叉树的方案数,那么很显然,最后的答案就是 f [ n ] [ k ] - f [ n ] [ k - 1 ] ,那么 阅读全文
posted @ 2019-09-18 08:23 hfutgy 阅读(158) 评论(0) 推荐(0)
摘要: 题意:给出一个矩阵宫室(Very Very Large!!!),该宫室中只有拥有传送门的密室才有宝藏,而传送门分为三种,它们分别是: “横天门”:由该门可以传送到同行的任一宫室; “纵寰门”:由该门可以传送到同列的任一宫室; “任意门”:由该门可以传送到以该门所在宫室为中心周围8格中任一宫室(如果目 阅读全文
posted @ 2019-09-17 10:04 hfutgy 阅读(131) 评论(0) 推荐(0)
摘要: 题意:求出 f(n) mod 1000000007 的值,n 在long long 范围内; 解法:矩阵快速幂; 1.矩阵快速幂; = X …………① 同理: = X …………② 我们把②式带入①式 得: = X 附上代码: 阅读全文
posted @ 2019-09-12 22:50 hfutgy 阅读(262) 评论(0) 推荐(0)
摘要: 题意:给定n*n的矩阵A,求A^k 解法:矩阵快速幂; 1.矩阵快速幂;假设有 A和 B两个矩阵,当矩阵A的列数等于矩阵B的行数时,A与B可以相乘得到矩阵 C: (1) 矩阵 C的行数等于矩阵 A的行数,C的列数等于 B的列数; (2) 乘积 C的第 行第 列的元素等于矩阵 A的第 行的元素与矩阵 阅读全文
posted @ 2019-09-12 17:05 hfutgy 阅读(169) 评论(0) 推荐(0)
摘要: 题意:小A要求每天早上在6:00之前到达公司,否则这个月工资清零。可是小A偏偏又有赖床的坏毛病。于是为了保住自己的工资,小A买了一个十分牛B的空间跑路器,每秒钟可以跑2^k千米。当然,这个机器是用longint存的,所以总跑路长度不能超过maxlongint千米。小A的家到公司的路可以看做一个有向图 阅读全文
posted @ 2019-09-10 20:26 hfutgy 阅读(152) 评论(0) 推荐(0)
摘要: 题意:有一个图,既有单向边也有双向边,每个点有点权,边没有权值,求从一个点到另一个点的权值差(为正数)的最大值; 解法:最短路+分层图 或 双向SPFA; 1.最短路+分层图;可以很明显地看到如果想要赚钱,那么就要能从起点-->买入点-->卖出点-->终点,难点就是你能否经过买入点和卖出点,而分层图 阅读全文
posted @ 2019-09-07 20:41 hfutgy 阅读(209) 评论(0) 推荐(0)
摘要: 题意:有n个城市,m条航线,每条航线都有一个权值,并且还多了k次免费航行的机会,求1~n的最短路; 做法:分层图+最短路; 1.分层图;因为多了k次免费航行,所以可以考虑建出k+1个图,然后跑一遍最短路; 2.最短路;既然能写分层图,那么最短路应该都会了吧,可以用 dijkstra 或 SPFA ; 阅读全文
posted @ 2019-09-07 09:45 hfutgy 阅读(207) 评论(0) 推荐(0)
摘要: 题意:给一个DAG,然后多加一条边,求在这个图中有多少种不同的生成树; 解法:树上DAG+组合数; 1.树上DAG:因为在DAG上多加了一条边,所以原图会出现环,那么多算的答案就是 rel = ans / ( 环上的点的入度的累乘 ),最后的答案就是 ans-rel(要注意,多加了一条边后,图上可能 阅读全文
posted @ 2019-09-05 19:29 hfutgy 阅读(184) 评论(0) 推荐(0)
摘要: 可持久化数组的写法和主席树差不多,但是主席树的每一棵树所表示的区间都不一样,而可持久化数组的每一棵树的区间都是一样的,剩下的写法就都差不多了; 附上代码: 阅读全文
posted @ 2019-08-24 09:18 hfutgy 阅读(128) 评论(0) 推荐(0)