OpenJudge2744
来源:互联网 发布:logo自制软件 编辑:程序博客网 时间:2024/05/17 06:05
这个, 题目看不懂, 看了一下下课本, 哎。
编完后, GCC++ 4.4 不能编译strstr函数。
也不知道是不是所有平台上的GCC++ 4.4都不能编译。
自己编了一个逆序的函数。
#include <iostream>#include <fstream>#include <string>#include <cstring>using namespace std; char str[100][101];int n;void rev(char c[]){int len=strlen(c);int i, j;for(i=0, j=len-1; i<j; i++, j--){c[len] = c[i];c[i] = c[j];c[j] = c[len];}c[len]='\0';}int search(char c[]){char substr[101], revsub[101]; int i, j, len, k, flat, maxlen=0;len = strlen(c);for(i=0; i<len; i++){for(j=len; j>i; j--){strncpy(substr, c+i, j-i); strncpy(revsub, c+i, j-i); substr[j-i] = revsub[j-i] = '\0';rev(revsub); flat=1;for(k=0; k<n; k++){if(strstr(str[k], substr)==NULL && strstr(str[k], revsub)==NULL){flat=0;break;}}if(flat==1 && maxlen<strlen(substr)){maxlen = strlen(substr);}}}return maxlen;}int main(){//ifstream in("OpenJudgeText.txt"); int t, i, maxsub, minlen;char tmp[101];cin>>t;while(t--){cin>>n;cin>>str[0];strcpy(tmp,str[0]); minlen = strlen(tmp); for(i=1; i<n; i++){cin>>str[i];if(strlen(str[i]) < minlen){strcpy(tmp,str[i]);minlen = strlen(tmp);}}maxsub = search(tmp);printf("%d\n", maxsub);}return 0; }
- OpenJudge2744
- New Release of MySQL Community Edition 5.5.18 Now Generally Available
- 详解C中volatile关键字
- 设置advTree节点不能改变自身层级关系
- 常数静态成员初始化
- Java Web项目开发到底需要掌握哪些技术?
- OpenJudge2744
- 联想K42 装机备忘
- [收集]内存对齐、sizeof、#pragma pack(n)
- 手把手教你如何配置和编译ogre 1.7.0 + cegui 0.7.1
- Android下如何调试程序?
- 大数据量,海量数据 处理方法总结
- Android数据存储(总结篇)
- c/c++资源(源码,开发工具)
- 不能太相信集成QT的VS的IDE了,QT工程有的莫名情况需要重新rebuild工程