博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
字符串交叉插入
阅读量:6093 次
发布时间:2019-06-20

本文共 1275 字,大约阅读时间需要 4 分钟。

将一个较短的字符串的字符交叉地插入到另一个较长的字符串中,每个字符以一定的间隔插入。该间隔=(长字符串长度/短字符串),即对两个字符串长度相除取整。例如:如果两个字符串等长(字符插入间隔=1),就将后输入的串的字符每隔一个字符插入先输入的串当中;被插入的字符串长度为12,待插入的字符串的长度为5,那么字符插入间隔为2,以此类推。请参考Sample Input和Sample Output。

输入

只有一组测试数据,两个字符串(它们的长度不会超过100)。

输出

输出1行信息,即插入后的新串。

样例输入

ABCDEFG abcdefgABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghi

样例输出

AaBbCcDdEeFfGgABaCDbEFcGHdIJeKLfMNgOPhQRiSTUVWXYZ
#include
#include
using namespace std; int main() { int m, n, i, j, k; char f[100005], x[100005], y[100005]; while (cin >> x >> y) { m = strlen(x); n = strlen(y); k = m / n; j = 0; if (k == 0) { strcpy(f, x); strcpy(x, y); strcpy(y, f); m = strlen(x); n = strlen(y); k = m / n; } for (i = 0; i < m; i++) { cout << x[i]; if ((i + 1) % k == 0 && j < n) { cout << y[j]; j++; } } if (j < n) for (i = j; i < n; i++) cout << y[i]; cout << endl; } return 0; }

 

转载于:https://www.cnblogs.com/Lazy-Cat/p/9838467.html

你可能感兴趣的文章
plugin插件
查看>>
(转载一篇)Windows7与ArcGIS Desktop9.3冲突问题解决(由QQ安装问题引出)(经本人验证已解决)...
查看>>
关于Linux C编程问题 (struct sockaddr*)&addr 强制转换
查看>>
需求规格说明书
查看>>
SSE图像算法优化系列五:超高速指数模糊算法的实现和优化(10000*10000在100ms左右实现)。...
查看>>
Event based Collections
查看>>
例题1-1
查看>>
【leetcode】901. Online Stock Span
查看>>
创建oracle本地数据库步骤详解
查看>>
线段树入门
查看>>
【Android】在某一时间段控制Button是否可点击
查看>>
页面布局
查看>>
svnrdump:E175000:SSL is not supported错误的解决
查看>>
3月23日html(四) 格式与布局
查看>>
http协议
查看>>
《mac的git安装手册-1》
查看>>
MyBatis基础:MyBatis入门(1)
查看>>
nessus安装及使用
查看>>
AspNet GridView Excel 下载 Excel 导出
查看>>
cordova 源码分析记录
查看>>