hdu 5510 Bazinga 2015ACM/ICPC亚洲区沈阳站现场赛
2015-11-01 10:00
441 查看
做的重现赛。
主要思路:如果A是B的子串,且B是C的子串,显然有A是C的子串,所以没有必要去两个都判断。预处理一下相邻串之间的关系就可以过了,和去重的思路非常像。
如果只单纯判断是否为子串,strstr效率比KMP高。
主要思路:如果A是B的子串,且B是C的子串,显然有A是C的子串,所以没有必要去两个都判断。预处理一下相邻串之间的关系就可以过了,和去重的思路非常像。
如果只单纯判断是否为子串,strstr效率比KMP高。
#include<stdio.h> #include<string.h> using namespace std; char in[512][2005]; int n; int skip[512]; int solve() { for(int i = n; i > 0; i--) { for(int j = 1; j < i; j++) { if(skip[j]) continue; if(strstr(in[i], in[j]) == 0){ return i; } } } return -1; } int main() { int t; scanf("%d", &t); for(int cas = 1; cas <= t; cas++) { scanf("%d", &n); for(int i = 1; i <= n; i++) scanf("%s", in[i]); memset(skip, 0, sizeof(skip)); for(int i = 2; i <= n; i++) { if(strstr(in[i], in[i-1])){ skip[i-1] = 1; } } printf("Case #%d: %d\n", cas, solve()); } return 0; }
相关文章推荐
- IOS实用技术之手势缩放图片
- 一个简单的数据库备份
- new的奥秘:Java中new关键字与类加载器
- 《TCP/IP详解 卷1:协议》读书笔记
- 1553B数据总线
- Oracle EBS AR 客户返利和坏帐准备事务处理类型设置
- PLSQL配置新的oracle实例
- 《TCP/IP详解 卷1:协议》读书笔记 第一章
- The superclass "javax.servlet.http.HttpServlet" was not found on the Java Build Path
- Android之路-启程1:前言以及为什么看好Android
- [O] SQLite数据库报错:no such column
- JAVA创建String对象问题
- 运行示例sparkPi计算圆周率(1.1)
- 原码、反码、补码之加减运算
- java线程中异常的处理 -Java 7 Concurrency Cookbook 读书笔记
- InvocationTargetException异常
- Java 异常处理机制和集合框架
- Linux 用户身份切换
- 杭电2602---01背包
- java学习:创建鼠标监听事件