题目描述
在数学中,某个序列的子序列是从最初序列通过去除某些元素但不破坏余下元素的相对位置(在前或在后)而形成的新序列。
给定一个字符串s和整数k,将s划分成k个子系列,每个子系列的相邻元素在原来s中的下标差值正好为k。
输入
仅一行, 包含空格分开的字符串s和整数k。字符串s全部由大写字母构成,且长度不超过100. 1<k<=min(10, strlen(s)).
输出
依次输出s划分成的k个子系列,具体格式见样例
样例输入 Copy
ABCDEFGH 3
样例输出 Copy
ADG
BEH
CF
答案:
#include<stdio.h>
#define maxx 100
#include<string.h>
int main(){
char s[maxx];int k,i,zheng;
scanf("%s",&s);
scanf("%d",&k);
for(zheng=0;zheng<k;zheng++){
for(i=0;i<strlen(s);i++){
if(i%k==zheng)printf("%c",s[i]);
}
printf("\n");}
return 0;
}