HDU1238_搜索入门_暴力枚举
2011-12-01 13:58
393 查看
题目大意:
给你n个字符串,然后要求求一个最大的子串(或者子串的反串,子串可以倒过来的意思)在每个字符串中都出现。要求求这个子串的长度。
解题思路:
为了节省时间,先找出这些串中长度最短的,然后枚举这个串中的所有子串。再让这个子串或者反串去匹配每一个串,若都符合,即输出,然后退出。这里枚举,当然是从子串长度大的往小的枚举啦,节省时间。
不过还是写了3重for循环,但是串的长度,还有串的数量都是100以内的。所以复杂度还可以接受。1000000.
代码:
[code]
#include
#include
#include
#include
const int MAX=105;
using namespace std;
string str[MAX];
int n;
char* search(int index_min)
{
int i,j;
char sub[MAX];//子串为char型
string resub="";//倒转后的为string类,注意
//string sub,resub;
int len=str[index_min].size();
string min(str[index_min]);
for(i=len;i>=1;i--)//长度
{
for(j=0;j+i<=len;j++)//地址
{
min.copy(sub,i,j);
sub[i]='\0';
resub=sub;
reverse(resub.begin(),resub.end());
int Flag=0;
for(int h=0;h>cas;
while(cas--)
{
int i;
cin>>n;
int min_index=0;
for(i=0;i>str[i];
if(str[min_index].size()>str[i].size())
{
min_index=i;
}
}
ans=search(min_index);
//search(min_index);
//cout<
给你n个字符串,然后要求求一个最大的子串(或者子串的反串,子串可以倒过来的意思)在每个字符串中都出现。要求求这个子串的长度。
解题思路:
为了节省时间,先找出这些串中长度最短的,然后枚举这个串中的所有子串。再让这个子串或者反串去匹配每一个串,若都符合,即输出,然后退出。这里枚举,当然是从子串长度大的往小的枚举啦,节省时间。
不过还是写了3重for循环,但是串的长度,还有串的数量都是100以内的。所以复杂度还可以接受。1000000.
代码:
[code]
#include
#include
#include
#include
const int MAX=105;
using namespace std;
string str[MAX];
int n;
char* search(int index_min)
{
int i,j;
char sub[MAX];//子串为char型
string resub="";//倒转后的为string类,注意
//string sub,resub;
int len=str[index_min].size();
string min(str[index_min]);
for(i=len;i>=1;i--)//长度
{
for(j=0;j+i<=len;j++)//地址
{
min.copy(sub,i,j);
sub[i]='\0';
resub=sub;
reverse(resub.begin(),resub.end());
int Flag=0;
for(int h=0;h>cas;
while(cas--)
{
int i;
cin>>n;
int min_index=0;
for(i=0;i>str[i];
if(str[min_index].size()>str[i].size())
{
min_index=i;
}
}
ans=search(min_index);
//search(min_index);
//cout<
相关文章推荐
- hdu 1238 Substrings(暴力枚举)
- HDU 1238 Substrings(KMP+暴力枚举)
- hdu 1238 暴力枚举+STL
- hdu 1238 Substrings(暴力枚举)
- HDU 1238 Substrings(KMP+暴力枚举)
- HDU 5778 abs (暴力枚举)
- HDU 3823 暴力枚举
- hdu 5556 Land of Farms【思维+暴力枚举+最大独立集】好题!
- hdu 5952 Counting Cliques 暴力搜索 2016沈阳区域赛
- hdu 5339 暴力枚举
- HDU 1405 The Last Practice(暴力枚举)
- hdu 4995 Revenge of kNN(暴力枚举)
- Hdu 4309Seikimatsu Occult Tonneru【最大流Dinic+暴力枚举Dfs+建图】人生难免磕磕碰碰
- HDU 1399(搜索题,暴力- -!)
- HDU-4470-Lights Against Dudely(暴力枚举)
- hdu 1238 Substrings (暴搜,枚举)
- hdu 5128 The E-pang Palace(计算几何,暴力枚举)
- HDU-4968 Improving the GPA 暴力枚举
- hdu 1399 Starship Hakodate-maru (暴力搜索)
- hdu 1427 速算24点 dfs暴力搜索