摘要: 原题链接 考察:玄学dfs 思路1: 枚举组,判定当前数能否放进当前所有组.if 能, 加入到组中 else 新创立一个组.关键在于判定组内元素与当前数是否互质,这里用乘积代表组内的元素,如果与乘积不会互质,那么与组内所有元素一定不互质.(但是感觉会爆long long,10个数字,1040,但是实 阅读全文
posted @ 2021-03-08 21:21 acmloser 阅读(97) 评论(0) 推荐(0) 编辑
摘要: 原题链接 考察:dfs 时隔n年练习string 的自带函数,完全不记得substr了.... 思路: 首先注意重叠部分的长度使用是任意的.预处理出每个字符串之间重叠的最短长度.然后dfs相连即可. 判定前后缀是否相等用substr较为方便.主要有两种用法 Go 因为重合部分不能超过原字符串长,所以 阅读全文
posted @ 2021-03-08 17:43 acmloser 阅读(98) 评论(0) 推荐(0) 编辑
摘要: 原题链接 考察:bfs 思路: 行走方式不同的迷宫问题,最坑的是输入的先是列数再是行数. 1 #include <iostream> 2 #include <cstdio> 3 #include <cstring> 4 #include <queue> 5 using namespace std; 阅读全文
posted @ 2021-03-08 10:03 acmloser 阅读(78) 评论(0) 推荐(0) 编辑
摘要: 原题链接 考察:bfs 错误思路: 定义结构体Node,用Node里vector记录路径. 此思路会TLE,当n很大时,每次赋值都要消耗一定时间. 正确思路: 用数组记录路径,即用PII 数组记录到达该点的上一步的坐标.到时候再迭代即可. 注意:当迭代的时候,不要重新定义PII it!!!!! 最最 阅读全文
posted @ 2021-03-08 09:40 acmloser 阅读(76) 评论(0) 推荐(0) 编辑
摘要: 原题链接 考察:Flood Fill + hash 思路: 首先连通点很容易找到,关键是判定星群是否相似.对计算机来说很难保存每个连通块形状再旋转比较.这里可以考虑hash映射.这里的经验值是计算连通块两两之间的距离,累加和,作为关键字.这里要用sqrt,不能直接用平方和.平方和更容易发生冲突,比如 阅读全文
posted @ 2021-03-08 00:56 acmloser 阅读(60) 评论(0) 推荐(1) 编辑