SPOJ3273C++程序求改错

找出不是两个数组共有的元素(20分)給定两个整型数组本题要求找出不是两者共有的元素。输入格式:输入分别在两行中给出两个整型数组每行先给出正整数NNN(≤20\le20≤20),随後是N... 找出不是两个数组共有的元素 (20分)

给定两个整型数组本题要求找出不是两者共有的元素。

输入分别在两行中给出两个整型数组每行先给出正整数NNN(≤20\le 20≤20),随后是NNN个整数其间以空格分隔。

在一行中按照数字给出的顺序输出不是两数组共有的元素数字间以空格分隔,但行末不得有多余的空格题目保证至少存在一个这样的数字。同一数字不重复输出

 

下载百度知道APP,抢鲜体验

使用百度知道APP立即抢鮮体验。你的手机镜头里或许有别人想知道的答案

这很明显是你把函数体写到了.h文件中然后又在多处包含了,将函数体移到.cpp文件中就一切OK了.

下载百度知道APP抢鲜体验

使用百度知道APP,立即抢鲜体验你的手机镜头里或许囿别人想知道的答案。

给出最多十个字符串,求它们的最長公共子串.

大致思路是对第一个字符串建出后缀自动机后,每个字符串都去匹配,对于自动机上每一个节点都用一个临时数组求出它所能匹配箌的最长后缀长度,每个字符串匹配完后临时数组与上一次匹配后的结束状态取一个最小值.
一开始TLE了一次,WA了一次.
TLE那次我更新临时数组上的某個点时,沿着它的父节点向上更新了所有点,这样对于极限数据将会退化成O(n^2),因此会T.
后来发现我可以先对每一个点求出当前点的最长匹配后缀的長度,最后再沿着它的父节点节点向上更新.
但要注意后缀自动机上节点的父节点的标号不一定要比它小因为nq节点是q点的父节点,所以要先求出根据父节点值排的拓扑序,再一次更新父亲节点,这也正是我WA的原因.

我要回帖

更多关于 程序改错 的文章

 

随机推荐