摘要: KMP算法的关键是它的next数组,利用next数组能够高效地确定在当前失配的情况下,应当将模式串移动多少位才能够避免不必要的匹配。 我们要计算一个长度为m的转移函数next。next数组的含义就是一个固定字符串的最长前缀和最长后缀相同的长度。 所以当不匹配... 阅读全文
posted @ 2018-04-23 17:57 ffgcc 阅读(620) 评论(0) 推荐(0) 编辑
摘要: 链接 给你一个圆和一个点,让你在给定圆内画一个圆,使得答案圆不能包含给定点,而且使得给定圆没有被答案圆覆盖的面积最小。输出答案圆的圆心和半径即可。 解析:分三种情况考虑: 当点在圆外时: 那么给出的圆就符合条件,直接输出圆心和坐标即可 当给出的点和... 阅读全文
posted @ 2018-04-22 11:30 ffgcc 阅读(177) 评论(0) 推荐(0) 编辑
摘要: 给定n,问有多少数对 x, y满足:x, y∈[1, n], x 下面代码感觉比较优了,但还是会超时,有新思路会再更新#include#define ll long long#define inf 0x3f3f3f3f#define pb push_b... 阅读全文
posted @ 2018-04-21 22:48 ffgcc 阅读(121) 评论(0) 推荐(0) 编辑
摘要: 题目描述隔壁学校地形图可以通过一个高度矩阵表示,矩阵中每一个位置都有一个数hi , j表示这个坐标的海拔,我们姑且将其称为海拔图,容易发现,我们可以通过这个矩阵轻松算出隔壁学校的主视图,左视图。 相反的,我们却不能通过主视图和左视图唯一确定海拔图... 阅读全文
posted @ 2018-04-21 20:40 ffgcc 阅读(314) 评论(0) 推荐(0) 编辑
摘要: 题目描述有两个长度为N的序列A和B,在A和B中各任取一个数相加可以得到N2个和,求这N2个和中最小的N个。 输入第一行输入一个正整数N(1using namespace std;const int N=1e5+10int n,a[N],b[N];struct... 阅读全文
posted @ 2018-04-21 20:32 ffgcc 阅读(281) 评论(0) 推荐(0) 编辑
摘要: 时间限制: 1 Sec 内存限制: 256 MB 提交: 169 解决: 24 [提交][状态][讨论版][命题人:admin] 题目描述在麦克雷的面前有N个数,以及一个R*C的矩阵。现在他的任务是从N个数中取出 R*C 个,并填入这个矩阵中。矩阵每一行... 阅读全文
posted @ 2018-04-21 20:21 ffgcc 阅读(127) 评论(0) 推荐(0) 编辑
摘要: 1.公式(比较稳啊) 设直线方程为ax+by+c=0,点坐标为(m,n) 则垂足为((b*b*m-a*b*n-a*c)/(a*a+b*b),(a*a*n-a*b*m-b*c)/(a*a+b*b)) 2.计算点到线段的最近点如果该线段平行于X轴(Y轴... 阅读全文
posted @ 2018-04-21 20:15 ffgcc 阅读(2795) 评论(0) 推荐(0) 编辑
摘要: 链接 题意:给你四块分裂的小正方形,然后让你凑成一个大的正方形,并且相邻的位置不能相同,然后问你最小的变化次数是多少? 解析:我们,枚举出四个小块块组合的所有情况,然后按从0开始和从1开始枚举每一个方格,不满足条件+1,最后更新最小值即可#include#d... 阅读全文
posted @ 2018-04-19 19:51 ffgcc 阅读(136) 评论(0) 推荐(0) 编辑
摘要: 链接 题意: 对于一个数组,将这个数组的所有非空子序列写下,然后删掉满足:最大值与最小值的差大于等于d 的子序列。 最后剩下了X 个子序列。 请你给出原序列的一种合法排列。解析: k个x和一个x+d可以产生2的k次方的贡献,下一个可以为 k1个x+2d和一个... 阅读全文
posted @ 2018-04-19 18:18 ffgcc 阅读(117) 评论(0) 推荐(0) 编辑
摘要: import android.os.Bundle;import android.support.v7.app.AppCompatActivity;import android.view.View;import android.widget.A... 阅读全文
posted @ 2018-04-18 11:08 ffgcc 阅读(108) 评论(0) 推荐(0) 编辑