[GESP202403 四级] 相似字符串

GESP编程共123题,本题是整站第1400题,已经有人完成了本题,加油!

题目描述

对于两个字符串 A 和 B,如果 A 可以通过删除一个字符,插入一个字符,修改一个字符变成 B,那么我们说 A 和 B 是相似的。

比如 apple 可以通过插入一个字符变成 applee,可以通过删除一个字符变成 appe,也可以通过修改一个字符变成 bpple。因此 apple 和 applee、appe、bpple 都是相似的。但 applee 并不能 通过任意一个操作变成 bpple,因此它们并不相似。

特别地,两个完全相同的字符串也是相似的。

给定 T 组 A,B,请你分别判断它们是否相似。

输入格式

第一行一个正整数 T。
接下来 T 行,每行两个用空格隔开的字符串 A 和 B。

输出格式

对组 A,B,如果他们相似,输出 similar,否则输出 not similar

输入输出样例

输入 #1

5
apple applee
apple appe
apple bpple
applee bpple
apple apple

输出 #1

similar
similar
similar
not similar
similar

说明/提示

对全部的测试数据,保证 1≤T≤100,A 和 B 的长度不超过 50,仅含小写字母。

别灰心,再试一次!

真题解析

【题目大意】

给定T组输入,每组输入有两个单词,判断两个单词能否通过增加、删除或者修改一个字符变得相同,如果可以就是相似。

【考纲知识点】

输入输出语句、循环语句、函数定义及调用、基本运算

【解题思路】

根据题目要求定义需要的变量,并实现输入

输入T行,每行两个字符串,表示两个单词。

判断两个单词是否相似。

如果两个的单词的长度差超过1,就不相似。

当两个单词的长度相同时:如果不同的字母个数大于1个,肯定不相似;如果不同的字母个数等于1个,就可以通过一次操作变成一样

当两个单词长度差为1时:寻找两者不同的字符,如果有多个不同的字符,则不相似;如果只有一个,则相似。比对时,在较长的单词中找到这个字母,跳过该字母后继续比对即可。

调用函数,输出答案。

【参考程序】

本站题目仅供学习,GESP版权归CCF所有,如有侵权请联系删除。站长陈老师QQ及微信:208234。