| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 3139 人关注过本帖, 1 人收藏
标题:[讨论]第四期题目,大家做做.
只看楼主 加入收藏
nuciewth
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:我爱龙龙
等 级:贵宾
威 望:104
帖 子:9786
专家分:208
注 册:2006-5-23
结帖率:50%
收藏(1)
 问题点数:0 回复次数:37 
[讨论]第四期题目,大家做做.

All in All

--------------------------------------------------------------------------------

Time limit: 1 Seconds Memory limit: 32768K
Total Submit: 2329 Accepted Submit: 763

--------------------------------------------------------------------------------
You have devised a new encryption technique which encodes a message by inserting between its characters randomly generated strings in a clever way. Because of pending patent issues we will not discuss in detail how the strings are generated and inserted into the original message. To validate your method, however, it is necessary to write a program that checks if the message is really encoded in the final string.
Given two strings s and t, you have to decide whether s is a subsequence of t, i.e. if you can remove characters from t such that the concatenation of the remaining characters is s.


Input

The input contains several testcases. Each is specified by two strings s, t of alphanumeric ASCII characters separated by whitespace. Input is terminated by EOF.


Output

For each test case output, print "Yes" if s is a subsequence of t or "No" if not.


Sample Input

sequence subsequence
person compression
VERDI vivaVittorioEmanueleReDiItalia
caseDoesMatter CaseDoesMatter


Sample Output

Yes
No
Yes
No

/*英语好的帮忙翻译一下,谢了*/

搜索更多相关主题的帖子: 题目 讨论 
2006-12-03 20:09
nuciewth
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:我爱龙龙
等 级:贵宾
威 望:104
帖 子:9786
专家分:208
注 册:2006-5-23
收藏
得分:0 

Ones

--------------------------------------------------------------------------------

Time limit: 1 Seconds Memory limit: 32768K
Total Submit: 1799 Accepted Submit: 854

--------------------------------------------------------------------------------

Given any integer 0 <= n <= 10000 not divisible by 2 or 5, some multiple of n is a number which in decimal notation is a sequence of 1's. How many digits are in the smallest such a multiple of n?


Sample Input

3
7
9901


Sample Output

3
6
12

/*给出一个不能被2和5整除的数,问这个数可以被最少的几个1组成的数整除*/


倚天照海花无数,流水高山心自知。
2006-12-03 20:11
我不是郭靖
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:494
专家分:6
注 册:2006-10-4
收藏
得分:0 

第二题:

#include <stdio.h>

int main()
{
int n, count;

while (EOF != scanf("%d", &n))
{
int t = 0;

count = 0;
while ((t * 10 + 1) % n != 0)
{
count++;
t = (t * 10 + 1) % n;
}
count++;
printf("%d\n", count);
}

return 0;
}


2006-12-03 20:30
卧龙孔明
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:59
帖 子:3872
专家分:684
注 册:2006-10-13
收藏
得分:0 
我的第二题解法:从1开始,对输入数据%运算,如果不能整除则1*10+1,(11*10+1;111*10+1...)然后继续,直到成功输出结果

[此贴子已经被作者于2006-12-3 20:36:05编辑过]



My Blog: www.aiexp.info
虽然我的路是从这里开始的,但是这里不再是乐土.感谢曾经影响过,引导过,帮助过我的董凯,飞燕,leeco,starwing,Rockcarry,soft_wind等等等等.别了,BCCN.
2006-12-03 20:33
我不是郭靖
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:494
专家分:6
注 册:2006-10-4
收藏
得分:0 
以下是引用卧龙孔明在2006-12-3 20:33:39的发言:
我的第二题解法:从1开始,对输入数据%运算,如果不能整除则1*10+1,(11*10+1;111*10+1...)然后继续,直到成功输出结果

对于9901, 是12个1,long的范围好象不够啊


2006-12-03 20:39
卧龙孔明
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:59
帖 子:3872
专家分:684
注 册:2006-10-13
收藏
得分:0 
以下是引用我不是郭靖在2006-12-3 20:39:48的发言:

对于9901, 是12个1,long的范围好象不够啊

用long long或高精度运算(数组)


My Blog: www.aiexp.info
虽然我的路是从这里开始的,但是这里不再是乐土.感谢曾经影响过,引导过,帮助过我的董凯,飞燕,leeco,starwing,Rockcarry,soft_wind等等等等.别了,BCCN.
2006-12-03 20:41
我不是郭靖
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:494
专家分:6
注 册:2006-10-4
收藏
得分:0 
对于9981,需要9972个1,用高精度可能很烦

2006-12-03 20:53
nuciewth
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:我爱龙龙
等 级:贵宾
威 望:104
帖 子:9786
专家分:208
注 册:2006-5-23
收藏
得分:0 
我不是郭靖斑竹的算法是正确的.
不需要设置很高的存储类型.

倚天照海花无数,流水高山心自知。
2006-12-03 20:56
我不是郭靖
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:494
专家分:6
注 册:2006-10-4
收藏
得分:0 

第一题

#include <stdio.h>
#define N 100000

int main()
{
char s[N], t[N];
int i, index;

while (EOF != scanf("%s%s", s, t))
{
index = 0;
for (i = 0; t[i] != '\0'; i++)
{
if (s[index] == t[i])
{
index++;
if (s[index] == '\0')
{
printf("Yes\n");
break;
}
}
}
if (t[i] == '\0')
printf("No\n");
}

return 0;
}


2006-12-03 21:23
unicorn
Rank: 4
等 级:贵宾
威 望:14
帖 子:1066
专家分:0
注 册:2005-10-25
收藏
得分:0 

NO. 1


#include<stdio.h>
#include<string.h>
#define N 20

void main()
{
int count=0,k=0,flag=0;
char s[N],t[N];
while (printf(\"input two strings:\"),EOF != scanf(\"%s%s\", s, t))

{
for(int i=0;s[i]!='\0';i++)
{
for(int j=k;t[j]!='\0';j++)
{
if(s[i]==t[j])
{
flag=1;
count++;
k=j;
break;
}
}
if(flag==0) break;
}
printf(\"%s\n\",count==strlen(s)?\"YES\":\"NO\");
}
}

[此贴子已经被作者于2006-12-3 22:00:48编辑过]


unicorn-h.spaces. ◇◆ sava-scratch.spaces.  noh enol ! pue pu!w hw u! shemle aq ll!m noh 
2006-12-03 21:59
快速回复:[讨论]第四期题目,大家做做.
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016637 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved