| 编程中国 | 业界新闻 | 技术文章 | 视频教程 | 下载频道 | 程序源码 | 个人空间 | 编程论坛
全能ASP/PHP/ASP.NET主机,支持月付专业 MSSQL 数据库空间,支持月付专业 MySQL 数据库空间,支持月付赛孚耐:软件保护加密专家
身份认证令牌USB KEY   
共有 363 人关注过本帖
标题:求助一道字符串类的作业题??
收藏  订阅  推荐  打印 
msshadow
Rank: 2
等级:注册会员
帖子:40
积分:508
注册:2007-5-30
求助一道字符串类的作业题??

Description
若s为一个字符串,把其中(任何位置)的字符去掉,留下的内容为s的一个子序列,也叫部分序列。例如:s为"abcdefg", 去掉b,d,f,剩下"aceg";去掉a,b,c,剩下"defg";于是"aceg","defg"都是字符串s的部分序列。请编程判断一个字符串是不是另一个的部分序列。
Input
输入两行:(输入的字符串均不为空字符串,且长度都不打于255)
第一行为字符串s。
第二行为一个字符串p。
判断p是不是s的一个部分序列。
Output
如果p不是s的部分序列,输出No;如果是,则输出两行,第一行为Yes,第二行为字符串p中各个字符在s中的序号(从1开始)。
Sample Input
aabbccdd
abc
abcdefg
agh
Sample Output
Yes
1 3 5
(注意不能是1 3 5以外的,比如2 3 5, 1 4 6等)
No
请各位大大看看吧..............等着....................
搜索更多相关主题的帖子: 字符  序列  作业  行为  
2007-12-16 22:22
布拉莫斯
Rank: 3Rank: 3
来自:中国太平洋舰队
等级:中级会员
帖子:164
积分:2776
注册:2007-3-31

俺写了一个。。。 看是不是楼主想要的!!
#include "stdio.h"
#include "stdlib.h"
#include "string.h"
#define MAXSIZE  255
int main()
{
    int *index;
    int len_1=0,len_2=0,idex=0;
                     int i,j=0,flag=1;
    char str[255];
    char substr[255];
    scanf("%s",str);
    scanf("%s",substr);
                     len_1=strlen(str);
    len_2=strlen(substr);
    index=(int *)malloc(len_2*sizeof(int));
    for(i=0;i<len_2;i++)
    {
        for(;j<len_1;j++)
        {
            if(str[j]==substr[i])
            {
              index[idex++]=j+1;    /* 位置跟数组下标相差1*/
              break;
            }
        }
        if((idex<len_2)&&j>=len_1) flag=0;  /*如果没有完全匹配*/
    }
    if(flag)
    {
        printf("Yes\n");
        for(i=0;i<len_2;i++)
             printf("%d ",index[i]);
    }
    else
         printf("No");
    free((void*)index);
    return 0;
}

真理往往掌握在少数人手中,可现实却是少数服从多数!
2007-12-16 23:00
msshadow
Rank: 2
等级:注册会员
帖子:40
积分:508
注册:2007-5-30
回复 2# 的帖子

可以的,谢谢2楼的朋友拉...
2007-12-17 10:04
nuciewth
Rank: 12Rank: 12Rank: 12
来自:我爱龙龙
等级:版主
威望:99
帖子:9589
积分:95706
注册:2006-5-23

转换:将字符串1中含有字符串2中的字符删除。得到的字符串和2比较。

倚天照海花无数,流水高山心自知。
2007-12-17 11:10
msshadow
Rank: 2
等级:注册会员
帖子:40
积分:508
注册:2007-5-30
回复 2# 的帖子

虽然不能ac,但是还是要谢谢了...
2007-12-19 20:52
关于我们 | 广告合作 | 编程中国 | 清除Cookies | Archiver | WAP | TOP

编程中国 版权所有,并保留所有权利。鲁ICP备08000592号
Powered by Discuz, Processed in 0.061597 second(s), 9 queries.
Copyright©2004-2008, BCCN.NET, All Rights Reserved