HDU 1238
好吧,这题直接搜索就可以了,不过要按照长度最短的来搜,很容易想得到。
记得ACM比赛上有这道题,呃。。不过,直接搜。。呵呵了,真不敢想。
#include <iostream>
#include <cstdio>
#include <string.h>
#include <algorithm>
using namespace std; char str[][];
char s1[],s2[]; int main(){
int T;
scanf("%d",&T);
while(T--){
int n; int min_p,minl=;
scanf("%d",&n);
for(int i=;i<=n;i++){
scanf("%s",str[i]);
int tmp=strlen(str[i]);
if(minl>tmp){
min_p=i; minl=tmp;
}
}
for(int i=;i<=minl;i++){
bool flag=false;
for(int k=;k<=minl-i;k++){
int p;
for(p=;p<i;p++){
s1[p]=str[min_p][k+p];
s2[i-p-]=str[min_p][k+p];
}
s1[p]=s2[p]='\0';
// printf("%s\n%s\n",s1,s2);
int j;
for(j= ;j<=n;j++)
if(!strstr(str[j],s1)&&!strstr(str[j],s2))
break;
if(j>n){
flag=true;
break;
}
}
if(!flag){
printf("%d\n",i-);
break;
}
}
}
return ;
}
上面用到了一上strstr()的函数,这个是我从别处学来的,也写写,分析一下。
函数名: strstr 原型是朴素的字符串比较方法
功 能: 在字符串中查找指定字符串的第一次出现
用 法: char *strstr(char *str1, char *str2);
用法:#include <string.h>
功能:
str1: 被查找目标
str2:要查找对象
该函数返回str2第一次在str1中的位置的指针,如果没有找到,返回NULL
函数:find(),属于类string中一个函数。
包含在#include <string>中
功能较多,最常用的便是 string s.find(str)返回的是字符串str第一次在s中出现的位置。否则会返回一个很大的值s.npos
也可以使用s.find(str,5)表示从第5个位置开始查找,返回值和上面相同。
HDU 1238的更多相关文章
- (KMP 字符串处理)Substrings -- hdu -- 1238
http://acm.hdu.edu.cn/showproblem.php?pid=1238 Substrings Time Limit:1000MS Memory Limit:32768KB ...
- Substrings - HDU 1238(最大共同子串)
题目大意:给你N个串,求出来他们的最大公共子串的长度(子串反过来也算他们的子串). 分析:很久以前就做过这道题,当时是用的strstr做的,不过相同的都是枚举了子串......还是很暴力,希望下次 ...
- hdu 1238 Substrings(kmp+暴力枚举)
Problem Description You are given a number of case-sensitive strings of alphabetic characters, find ...
- HDU 1238 Substing
思路: 1.找出n个字符串中最短的字符串Str[N] 2.从长到短找Str[N]的子子串 subStr[N],以及subStr[N]的反转字符串strrev(subStr[N]):(从长到短是做剪枝处 ...
- hdu 2328 Corporate Identity(kmp)
Problem Description Beside other services, ACM helps companies to clearly state their “corporate ide ...
- HDU - 2328 Corporate Identity(kmp+暴力)
传送门:http://acm.hdu.edu.cn/showproblem.php?pid=2328 题意:多组输入,n==0结束.给出n个字符串,求最长公共子串,长度相等则求字典序最小. 题解:(居 ...
- KUANGBIN带你飞
KUANGBIN带你飞 全专题整理 https://www.cnblogs.com/slzk/articles/7402292.html 专题一 简单搜索 POJ 1321 棋盘问题 //201 ...
- Kuangbin 带你飞 KMP扩展KMP Manacher
首先是几份模版 KMP void kmp_pre(char x[],int m,int fail[]) { int i,j; j = fail[] = -; i = ; while (i < m ...
- [kuangbin带你飞]专题1-23题目清单总结
[kuangbin带你飞]专题1-23 专题一 简单搜索 POJ 1321 棋盘问题POJ 2251 Dungeon MasterPOJ 3278 Catch That CowPOJ 3279 Fli ...
随机推荐
- B1208 [HNOI2004]宠物收养所 平衡树||set (滑稽)
这个题是一道splay裸题,但是我不太会写,所以用set直接水过去!!!哈哈哈哈,美滋滋. set总结: set是一个集合,然后里面没用重复的元素.里面有一些函数: begin() ,返回se ...
- linux下安装rabbitmq以及在spring中进行集成
### 一.安装erlang 1. yum install ncurses-devel 2. ./configure --prefix=/usr/local/erlang20 --without-ja ...
- AOP实现参数的判空问题
不想每次都去判断必传的参数是否为空,写代码太繁琐了,正好最近用了AOP实现权限控制,依葫芦画瓢,现在用它实现参数的判空,至于AOP的原理之类,自己百度了解一下吧 1. NullDisable注解 @D ...
- 【题解】【CodeForces712C】Memory and De-Evolution
[题目描述] 给定一个边长为xx的正三角形,现在每秒钟你可以改变其中一条边的长度(修改量整数),在改变过程中,每秒钟都需要保证改变后的三角形是合法的,且变成均为正整数. 现在需要最终把三角形改变成边长 ...
- web 应用
一.web应用 web应用程序是一种可以通过web访问的应用程序,程序 的最大好处是用户很容易访问应用程序,用户只需要有浏览器 即可,不需要安装其他团建,用用程序有两种模式C/S.B/S.C/S是客户 ...
- MySql c#通用类
using System; using System.Collections.Generic; using System.Linq; using System.Text;//导命名空间 using S ...
- python--8、socket网络编程
socket socket可以完成C/S架构软件的开发.须知一个完整的计算机系统是由硬件.操作系统.应用软件三者组成,具备了这三个条件,一台计算机就可以工作了.但是要跟别人一起玩,就要上互联网(互联网 ...
- DeltaFish 校园物资共享平台 第六次小组会议
DeltaFish 校园物资共享平台 第六次小组会议 记录人:娄雨禛 2018.6.3 任务进度(2018.5.28-2018.6.3) 前端 李鑫:商品详情界面设计.总体配色分析 刘鼎乾:卖家页面初 ...
- mysql主从不同步,提示更新找不到记录
查看丛库状态show slave status\G 从库原文提示:Last_Error: Coordinator stopped because there were error(s) in the ...
- 读书笔记「Python编程:从入门到实践」_10.文件和异常
10.1 从文件中读取数据 10.1.1 读取整个文件 with open(~) as object: contents=object.read() with open('C:/Users/jou/ ...