![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
字符串
yansuifeng1126
这个作者很懒,什么都没留下…
展开
-
41:判断元素是否存在
描述有一个集合M是这样生成的: (1) 已知 k 是集合 M 的元素; (2) 如果 y 是 M 的元素,那么, 2y+1 和 3y+1 都是 M 的元素; (3) 除了上述二种情况外,没有别的数能够成为 M 的一个元素。问题:任意给定 k 和 x,请判断 x 是否是 M 的元素。这里的 k是无符号整数,x 不大于 100000, 如果是,则输出YES,否则,输出 NO输入输入整数 k 和 x, 逗号间隔。输出如果是,则输出 YES,否则,输出NO样例输入0,22样例输出YES来源元原创 2021-04-30 18:02:51 · 312 阅读 · 1 评论 -
26:字符串最大跨距
描述有三个字符串S,S1,S2,其中,S长度不超过300,S1和S2的长度不超过10。想检测S1和S2是否同时在S中出现,且S1位于S2的左边,并在S中互不交叉(即,S1的右边界点在S2的左边界点的左侧)。计算满足上述条件的最大跨距(即,最大间隔距离:最右边的S2的起始点与最左边的S1的终止点之间的字符数目)。如果没有满足条件的S1,S2存在,则输出-1。例如,S = “abcd123ab888efghij45ef67kl”, S1=“ab”, S2=“ef”,其中,S1在S中出现了2次,S2也在S中出原创 2021-04-28 23:03:24 · 432 阅读 · 0 评论 -
25:最长最短单词
描述输入1行句子(不多于200个单词,每个单词长度不超过100),只包含字母、空格和逗号。单词由至少一个连续的字母构成,空格和逗号都是单词间的间隔。试输出第1个最长的单词和第1个最短单词。输入一行句子。输出两行输出:第1行,第一个最长的单词。第2行,第一个最短的单词。样例输入I am studying Programming language C in Peking University样例输出ProgrammingI提示如果所有单词长度相同,那么第一个单词既是最长单词也是最短原创 2021-04-28 22:16:11 · 719 阅读 · 0 评论 -
24:单词的长度
描述输入一行单词序列,相邻单词之间由1个或多个空格间隔,请对应地计算各个单词的长度。注意,如果有标点符号(如连字符,逗号),标点符号算作与之相连的词的一部分。没有被空格间开的符号串,都算作单词。输入一行单词序列,最少1个单词,最多300个单词,单词之间用至少1个空格间隔。单词序列总长度不超过1000。输出依次输出对应单词的长度,之间以逗号间隔。样例输入She was born in 1990-01-02 and from Beijing city.样例输出3,3,4,2,10,3,4原创 2021-04-28 21:47:19 · 256 阅读 · 0 评论 -
23:过滤多余的空格
描述一个句子中也许有多个连续空格,过滤掉多余的空格,只留下一个空格。输入一行,一个字符串(长度不超过200),句子的头和尾都没有空格。输出过滤之后的句子。样例输入Hello world.This is c language.样例输出Hello world.This is c language.#include <bits/stdc++.h>using namespace std;int main(){ char s[200]; vector<s原创 2021-04-28 21:41:32 · 524 阅读 · 0 评论 -
22:紧急措施
描述近日,一些热门网站遭受黑客入侵,这些网站的账号、密码及email的数据惨遭泄露。你在这些网站上注册若干账号(使用的用户名不一定相同),但是注册时使用了相同的email。你此时拿到了那份泄露的数据,希望尽快将自己的密码更改。策略如下:根据email找到你的用户名和密码,然后更改密码。更改的规则为:小写和大写交换,非字母字符保持不变。输入第一行为你的email地址,长度不超过50个字符且只包含字母、数字和‘@’符号。第二行为账号数N,N(0 < N < 10000)。接下来N行,每行表原创 2021-04-28 21:20:36 · 1044 阅读 · 0 评论 -
21:单词替换
描述输入一个字符串,以回车结束(字符串长度<=100)。该字符串由若干个单词组成,单词之间用一个空格隔开,所有单词区分大小写。现需要将其中的某个单词替换成另一个单词,并输出替换之后的字符串。输入输入包括3行,第1行是包含多个单词的字符串 s;第2行是待替换的单词a(长度 <= 100);第3行是a将被替换的单词b(长度 <= 100).s, a, b 最前面和最后面都没有空格.输出输出只有 1 行,将s中所有单词a替换成b之后的字符串。样例输入You want som原创 2021-04-28 20:49:13 · 676 阅读 · 0 评论 -
20:删除单词后缀
#include <bits/stdc++.h>using namespace std;int main(){string s,sub;char c1,c2,c3;int len;cin>>s;len=s.length();if(len>=3){c1=s[len-1];c2=s[len-2];c3=s[len-3];if(c1==‘r’ && c2==‘e’ || c1==‘y’&&c2==‘l’){sub = s原创 2021-04-28 17:12:04 · 539 阅读 · 0 评论 -
19:字符串移位包含问题
描述对于一个字符串来说,定义一次循环移位操作为:将字符串的第一个字符移动到末尾形成新的字符串。给定两个字符串s1和s2,要求判定其中一个字符串是否是另一字符串通过若干次循环移位后的新字符串的子串。例如CDAA是由AABCD两次移位后产生的新串BCDAA的子串,而ABCD与ACBD则不能通过多次移位来得到其中一个字符串是新串的子串。输入一行,包含两个字符串,中间由单个空格隔开。字符串只包含字母和数字,长度不超过30。输出如果一个字符串是另一字符串通过若干次循环移位产生的新串的子串,则输出true,原创 2021-04-26 23:02:04 · 700 阅读 · 0 评论 -
18:验证子串
描述输入两个字符串,验证其中一个串是否为另一个串的子串。输入输入两个字符串, 每个字符串占一行,长度不超过200且不含空格。输出若第一个串s1是第二个串s2的子串,则输出(s1) is substring of (s2)否则,若第二个串s2是第一个串s1的子串,输出(s2) is substring of (s1)否则,输出 No substring。样例输入abcdddncabca样例输出abc is substring of dddncabca#include <bits原创 2021-04-26 21:51:02 · 359 阅读 · 0 评论 -
15:整理药名
描述医生在书写药品名的时候经常不注意大小写,格式比较混乱。现要求你写一个程序将医生书写混乱的药品名整理成统一规范的格式,即药品名的第一个字符如果是字母要大写,其他字母小写。如将ASPIRIN、aspirin整理成Aspirin。输入第一行一个数字n,表示有n个药品名要整理,n不超过100。接下来n行,每行一个单词,长度不超过20,表示医生手书的药品名。药品名由字母、数字和-组成。输出n行,每行一个单词,对应输入的药品名的规范写法。样例输入4AspiRincisapride2-PENIC原创 2021-04-22 22:51:29 · 250 阅读 · 0 评论 -
12:加密的病历单
描述小英是药学专业大三的学生,暑假期间获得了去医院药房实习的机会。在药房实习期间,小英扎实的专业基础获得了医生的一致好评,得知小英在计算概论中取得过好成绩后,主任又额外交给她一项任务,解密抗战时期被加密过的一些伤员的名单。经过研究,小英发现了如下加密规律(括号中是一个“原文 -> 密文”的例子)原文中所有的字符都在字母表中被循环左移了三个位置(dec -> abz)逆序存储(abcd -> dcba )大小写反转(abXY -> ABxy)输入一个加密的字符串。原创 2021-04-22 21:48:46 · 609 阅读 · 0 评论 -
09:密码翻译
描述在情报传递过程中,为了防止情报被截获,往往需要对情报用一定的方式加密,简单的加密算法虽然不足以完全避免情报被破译,但仍然能防止情报被轻易的识别。我们给出一种最简的的加密方法,对给定的一个字符串,把其中从a-y,A-Y的字母用其后继字母替代,把z和Z用a和A替代,其他非字母字符不变,则可得到一个简单的加密字符串。输入输入一行,包含一个字符串,长度小于80个字符。输出输出每行字符串的加密字符串。样例输入Hello! How are you!样例输出Ifmmp! Ipx bsf zpv!来原创 2021-04-17 10:48:20 · 232 阅读 · 0 评论 -
08:字符替换
描述把一个字符串中特定的字符全部用给定的字符替换,得到一个新的字符串。输入只有一行,由一个字符串和两个字符组成,中间用单个空格隔开。字符串是待替换的字符串,字符串长度小于等于30个字符,且不含空格等空白符;接下来一个字符为需要被替换的特定字符;接下来一个字符为用于替换的给定字符。输出一行,即替换后的字符串。样例输入hello-how-are-you o O样例输出hellO-hOw-are-yOu来源计算概论05#include <iostream>#include原创 2021-04-15 21:48:14 · 622 阅读 · 0 评论 -
07:配对碱基链
描述脱氧核糖核酸(DNA)由两条互补的碱基链以双螺旋的方式结合而成。而构成DNA的碱基共有4种,分别为腺瞟呤(A)、鸟嘌呤(G)、胸腺嘧啶(T)和胞嘧啶(C)。我们知道,在两条互补碱基链的对应位置上,腺瞟呤总是和胸腺嘧啶配对,鸟嘌呤总是和胞嘧啶配对。你的任务就是根据一条单链上的碱基序列,给出对应的互补链上的碱基序列。输入一个字符串,表示一条碱基链。这个字符串只含有大写字母A、T、G、C,分别表示腺瞟呤、胸腺嘧啶、鸟嘌呤和胞嘧啶。字符串长度不超过255。输出一个只含有大写字母A、T、G、C的字符串,原创 2021-04-15 21:43:35 · 290 阅读 · 0 评论 -
06:合法 C 标识符
描述给定一个不包含空白符的字符串,请判断是否是C语言合法的标识符号(注:题目保证这些字符串一定不是C语言的保留字)。C语言标识符要求:非保留字;只包含字母、数字及下划线(“_”)。不以数字开头。输入一行,包含一个字符串,字符串中不包含任何空白字符,且长度不大于20。输出一行,如果它是C语言的合法标识符,则输出yes,否则输出no。样例输入RKPEGX9R;TWyYcp样例输出no#include <iostream>#include <cstd原创 2021-04-15 21:36:53 · 739 阅读 · 0 评论 -
05:输出亲朋字符串
描述编写程序,求给定字符串s的亲朋字符串s1。亲朋字符串s1定义如下:给定字符串s的第一个字符的ASCII值加第二个字符的ASCII值,得到第一个亲朋字符; 给定字符串s的第二个字符的ASCII值加第三个字符的ASCII值,得到第二个亲朋字符;依此类推,直到给定字符串s的倒数第二个字符。亲朋字符串的最 后一个字符由给定字符串s的最后一个字符ASCII值加s的第一个字符的ASCII值。输入输入一行,一个长度大于等于2,小于等于100的字符串。字符串中每个字符的ASCII值不大于63。输出输出一行,原创 2021-04-15 21:19:58 · 599 阅读 · 0 评论 -
03:基因相关性
描述为了获知基因序列在功能和结构上的相似性,经常需要将几条不同序列的DNA进行比对,以判断该比对的DNA是否具有相关性。现比对两条长度相同的DNA序列。首先定义两条DNA序列相同位置的碱基为一个碱基对,如果一个碱基对中的两个碱基相同的话,则称为相同碱基对。接着计算相同碱基对占总碱基对数量的比例,如果该比例大于等于给定阈值时则判定该两条DNA序列是相关的,否则不相关。输入有三行,第一行是用来判定出两条DNA序列是否相关的阈值,随后2行是两条DNA序列(长度不大于500)。输出若两条DNA序列相关,原创 2021-04-15 14:46:34 · 593 阅读 · 0 评论 -
02:找第一个只出现一次的字符
描述给定一个只包含小写字母的字符串,请你找到第一个仅出现一次的字符。如果没有,输出no。输入一个字符串,长度小于100000。输出输出第一个仅出现一次的字符,若没有则输出no。样例输入abcabd样例输出c#include <iostream>#include <cstdio>#include <string.h>using namespace std;int main(){ string s; int num[30],ans; int原创 2021-04-15 14:05:03 · 357 阅读 · 0 评论 -
1.13 32:日历问题
描述在我们现在使用的日历中, 闰年被定义为能被4整除的年份,但是能被100整除而不能被400整除的年是例外,它们不是闰年。例如:1700, 1800, 1900 和 2100 不是闰年,而 1600, 2000 和 2400是闰年。 给定从公元2000年1月1日开始逝去的天数,你的任务是给出这一天是哪年哪月哪日星期几。输入输入一行,每行包含一个正整数,表示从2000年1月1日开始逝去的天数。数据保证结果的年份不会超过9999。输出输出一行,该行包含对应的日期和星期几。格式为“YYYY-MM-DD原创 2021-02-27 14:30:07 · 323 阅读 · 0 评论