摘要:
应某~~yjk~~大佬的邀请,特来~~水一水~~做一做这道题 二话不说就是暴力 我的思路是,对于每次运算出来的结果,就当成一个新数。在加入枚举 具体的会写在mama里 cpp include include include using namespace std; char cs[60];//存符号 阅读全文
摘要:
这道题加深了hanio的理解 如果我们要移动第n个盘子。那么就是说,n+1以后(包括n+1)的盘子都已经到位了 阅读全文
摘要:
一个类似国王游戏的贪心 ~~话说要是先做了这个题,国王游戏之余懵逼这么久吗?~~ cpp include include include using namespace std; struct node { long long t; long long d; }; node data[101000] 阅读全文
摘要:
最大字段和加贪心 算长了个见识吧 cpp include include include using namespace std; long long map[210][20010]; int main() { int n,m; scanf("%d%d",&n,&m); for(int i=1;i 阅读全文
摘要:
"题目链接" 很好的一道搜索题,应该是利用了离散化的思想~~我好蒟蒻呀~~ 地图是根据给定的图无限的拼接的。 所以说暴力建图是不可取的。 其实不难看出,在跨越两张图时。我们就可以看做这个点时空穿梭一般。从底下回来了。 所以只用在原图上跑dfs觉可以了。 那怎么判断是否在同一张图内被遍历了呢? 又这么 阅读全文
摘要:
题目背景 c++ 一本通课后题 题目描述 有一个 M 行 N 列的点阵,相邻两点可以相连。一条纵向的连线花费一个单位,一条横向的连线花费两个单位。某些点之间已经有连线了,试问至少还需要花费多少个单位才能使所有的点全部连通。 输入输出格式 输入格式: 第一行输入两个正整数 m 和 n。 以下若干行每行 阅读全文
摘要:
"题目" 缩完点后统计入读为零的点就可以来。 因为缩完点后肯定是DAG cpp include include include using namespace std; int dfn[100100],low[100010],tim; bool instack[100010]; int stack[ 阅读全文
摘要:
偶然翻看我缝缝补补的luogu第一回夏令营讲义。发现还有tarjan缩点没看。于是就来学了学 tarjan类似于在搜索树上的算法 dfn为dfs到的时间,为时间戳。 low为当前节点能回到的dfs序最小的节点。 若一个节点在dfs树上能回到的最前节点,那么以他为根节点上的子树就是一个强联通分量(因为 阅读全文
摘要:
暴力lca "题目" 有一种情况肯定不行 较深得lca深度比浅的两个点还深,直接不行 如果可能存在解 则解一定是介中情况 较深的lca一定在另一个lca路径上。 判读呢? 就是用深的lca和浅的lca的两个点做lca 做出来的lca是浅的lca。那就是在路径上了 阅读全文
摘要:
对不起,常数小就是可以为所欲为的。 "题目" cpp // luogu judger enable o2 include include include using namespace std; struct node { int tree[100100]; int num; int lowbit( 阅读全文