题意:

  如上图所示,将一个字符串进行分割,反转等操作后不同字符串的个数:

例如字符串abba:可以按三种比例分割;1:3;2:2;3:1

部分反转可以得到如下所有的字符串:

  

  去掉重复可以得到六个不同的字符串,输出6;
解题思路:
  此题用反转函数reverse比较方便,然后就和模拟差不多,要列出所有情况,把不同的字符串保存在一个字符数组中,每次得到一个字符串都和该字符数字中的每一个比较,如果都不相同,把它存入字符数组;、
直接看代码吧:
 //Organize Your Train part II
#include<stdio.h>
#include<string>
#include<string.h>
#include<algorithm>
using namespace std;
int t;
char s1[],s2[];
char map[][];
int ans;//全局变量,记录字符串的个数
void check(char s[])//检测是否有新的字符串
{
for(int i=;i<ans;i++)
{
if(strcmp(s,map[i])==)
return;
}
strcpy(map[ans++],s);
return;
}
int main()
{
scanf("%d",&t);
int n;
while(t--)
{
ans=;
scanf("%s",s1);
n=strlen(s1);
for(int i=;i<n-;i++)
{
strcpy(s2,s1);
check(s2);
reverse(s2,s2+i+);
check(s2);
reverse(s2+i+,s2+n);
check(s2);
reverse(s2,s2+i+);
check(s2);
reverse(s2,s2+n);
check(s2);
reverse(s2,s2+n-i-);
check(s2);
reverse(s2+n-i-,s2+n);
check(s2);
reverse(s2,s2+n-i-);
check(s2);
}
printf("%d\n",ans);
}
return ;
}
 

  

POJ 3007 Organize Your Train part II的更多相关文章

  1. POJ 3007 Organize Your Train part II (字典树 静态)

    Organize Your Train part II Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 6478   Acce ...

  2. poj 3007 Organize Your Train part II(二叉排序树)

    题目:http://poj.org/problem?id=3007 题意:按照图示的改变字符串,问有多少种..字符串.. 思路:分几种排序的方法,,刚开始用map 超时(map效率不高啊..),后来搜 ...

  3. POJ 3007 Organize Your Train part II(哈希链地址法)

    http://poj.org/problem?id=3007 题意 :给你一个字符串,让你无论从什么地方分割,把这个字符串分成两部分s1和s2,然后再求出s3和s4,让你进行组合,看能出来多少种不同的 ...

  4. poj 3007 Organize Your Train part II(静态字典树哈希)

    Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 6700 Accepted: 1922 Description RJ Freigh ...

  5. POJ 3007:Organize Your Train part II

    Organize Your Train part II Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 7561   Acce ...

  6. Organize Your Train part II 字典树(此题专卡STL)

    Organize Your Train part II Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 8787   Acce ...

  7. poj Organize Your Train part II

    http://poj.org/problem?id=3007 #include<cstdio> #include<algorithm> #include<cstring& ...

  8. Organize Your Train part II(hash)

    http://poj.org/problem?id=3007 第一次用STL做的,TLE了,自己构造字符串哈希函数才可以.. TLE代码: #include <cstdio> #inclu ...

  9. Organize Your Train part II-POJ3007模拟

    Organize Your Train part II Time Limit: 1000MS Memory Limit: 65536K Description RJ Freight, a Japane ...

随机推荐

  1. NGUI出现Shader wants normals, but the mesh UIAtlas doesn&#39;t have them

    NGUI出现Shader wants normals, but the mesh UIAtlas doesn't have them,没有网格法线,打开UI Root上 UIPanel组建上的 Nor ...

  2. xcode4.5.1、iphone5、ios6 使用记录

    链接地址:http://blog.sina.com.cn/s/blog_6123f9650101dmo7.html 1.修改工程名:直接选中工程名点一下,就像修改名称夹名称一样简单了.   2.导入旧 ...

  3. Cloud Engine

    Cloud Engine:大杀器如何炼成   郑昀 创建于2016/6/18 最后更新于2016/6/19 点击查看我的<如何从零搭建一个技术平台>,这是一个系列.转载时请注明“转载自旁观 ...

  4. WebStorm 7.0 注册码

    User Name: EMBRACE License Key:===== LICENSE BEGIN =====24718-1204201000001h6wzKLpfo3gmjJ8xoTPw5mQvY ...

  5. 虚拟化:搭建本地虚拟化环境和安装ubuntu操作系统

    本文介绍如何在本地(windows操作系统)安装虚拟机,并在虚拟机下安装ubuntu操作系统. 一.机器升级 因为是在我的笔记本电脑上操作.首先升级了我的笔记本,买了内存条,将我机器的内存增加到8G, ...

  6. JVM调优总结(九)-新一代的垃圾回收算法

    垃圾回收的瓶颈 传统分代垃圾回收方式,已经在一定程度上把垃圾回收给应用带来的负担降到了最小,把应用的吞吐量推到了一个极限.但是他无法解决的一个问题,就是Full GC所带来的应用暂停.在一些对实时性要 ...

  7. 6.6.2 自己主动泛型化(automatic generalization)

    6.6.2 自己主动泛型化(automatic generalization) 在这一章,我们已经实现了几个 F# 的高阶函数.也看到了在 F# 和 C# 中并排的实现.F# 实现的非常重要方面,是我 ...

  8. NHibernate -- HQL

    使用NHibernate中的HQL来查询数据. 代码: /// <summary> /// 查找事件 /// </summary> private void btn_Selec ...

  9. MVC客户端验证的小示例

    MVC客户端验证的小示例 配置客户端验证的可用性: <configuration> <appSettings>  <add key="ClientValidat ...

  10. c:foreach如何嵌套循环,求指教,求优化

    java类: public class PopedomItem { private String id; private String pid; private String name; privat ...