HDU1238 Substrings (暴力)
来源:互联网 发布:关灯软件 编辑:程序博客网 时间:2024/06/05 04:01
这道题在搜索里面可以采取暴力枚举的方法进行一个个的搜索,至于逆序可以直接使用STL里面的reverse反转函数,虽然我在这里并没有使用。剪枝的话,我基本只进行了,如果剩下的长度不大于原本最大的长度,则不再进行搜索。
#include<iostream>#include<stdio.h>#include<string.h>#include<algorithm> using namespace std;int main(){ int n,m; char str[105][105],s1[105],s2[105]; while(~scanf("%d",&n)){ while(n--){ int minlen = 102,min = 0,max = 0; cin>>m; for(int i = 0;i<m;i++){ scanf("%s",str[i]); int len = strlen(str[i]); if(minlen > len){ minlen = len; min = i; } } int len = minlen,flag = 1; for(int i = 0;i<len;i++){ for(int j = i;j<len;j++){ if(j-i+1 < max) continue; for(int k = i;k<=j;k++){ s1[k-i] = str[min][k]; s2[j-k] = str[min][k]; } s1[j-i+1] = s2[j-i+1] = '\0'; for(int k = 0;k<m;k++){ if(!strstr(str[k],s1) && !strstr(str[k],s2)){ flag = 0; break; } } int l = j-i+1; if(l > max && flag) max = l; flag = 1; } } printf("%d\n",max); } } return 0;}
0 0
- hdu1238 Substrings (暴力)
- HDU1238:Substrings(暴力枚举)
- HDU1238 Substrings (暴力)
- HDU1238 Substrings
- hdu1238 Substrings
- HDU1238:Substrings
- HDU1238 Substrings
- hdu1238---Substrings
- hdu1238 Substrings
- HDU1238-Substrings
- hdu1238(Substrings)
- HDU1238 Substrings(KMP+穷举)
- Substrings(hdu1238)字符串匹配
- HDU1238 Substrings(kmp,最长公共子串)
- HDU1238
- hdu1238
- hdu1238
- HDU1238
- windows系统下读写HSF分区
- UITabBarController中自定义UITabBar
- [Leetcode]#217 Contains Duplicate
- Java之Socket
- JavaScript常用语句
- HDU1238 Substrings (暴力)
- [Leetcode]#219 Contains Duplicate II
- [Leetcode]#223 Rectangle Area
- YARN源码分析(二)-----ResourceManager中的NM节点管理
- [Leetcode]#228 Summary Ranges
- [Leetcode]Remove duplicates
- [Leetcode]#231 Power of Two
- Android自学笔记之 Activity详解
- [Leetcode]#234 Palindrome Linked List