随笔分类 - DFS
摘要:题目传送门 这道题明显N数据范围非常小,但是M很大,所以用折半搜索实现搜索算法的指数级优化,将复杂度优化到O(M^(N/2))。 将搜出的两半结果用哈希的方式合并(乘法原理)。 Code:
阅读全文
摘要:题目传送门 题目大意大概就是给你一个混合图(既有有向边又有无向边),对于每条无向边,u-v,问删去u->v,或删去v->u那条可以使新图强连通。(保证数据有解)。 这道题前几个数据点送分。 枚举每一条边,先将它去掉,遍历图,如果可以达到所有点,即强连通。 比如去掉u->v,其实只要dfs(u),判断
阅读全文
摘要:Problem A:题目传送门 题目大意:给你N家店,每家店有不同的价格卖苹果,ai元bi斤,那么这家的苹果就是ai/bi元一斤,你要买M斤,问最少花多少元。 题解:贪心,找最小的ai/bi。 #include <cstdio> using namespace std; double minn=2e
阅读全文
摘要:Fliptil(fliptile.pas/c/cpp) 【问题描述】 约翰知道,那些高智力又快乐的奶牛产奶量特别高。所以他做了一个翻瓦片的益智游戏来娱乐奶牛。 在一个M×N的骨架上,每一个格子里都有一个可以翻转的瓦片。瓦片的一面是黑色的,而另一面是白色的。对一个瓦片进行翻转,可以使黑变白,也可以使白
阅读全文
摘要:题目描述: 从美国州际高速公路建筑者那里,奶牛们引进了一种路径编号系统,来给牧场之间的道路编号。他们已经把 N(1<=N<=25)个牧场,用 1 到 N 的整数编号。现在他们需要将牧场间的道路也编上不同的编号,编号可以从 1 到 2000.如:I9 和 I16。看下面一个例子,牧场编号为 1,2,3
阅读全文