MGJ10. 输出指定长度子串
描述
输入描述
输入第一行一个字符串,如:“1234567890”输出描述
输出所有长度为n的子串,如“12345”,“23456”,“34567”,“45678”,“56789”示例1
输入:
123456789 5
输出:
12345 23456 34567 45678 56789
C++14 解法, 执行用时: 1ms, 内存消耗: 364KB, 提交时间: 2020-07-28
#include<stdio.h> #include<string.h> int main(){ char s[100000]; int len,i,j,n; scanf("%s",s); scanf("%d",&n); len = strlen(s); if(len<n||n<=0){ printf("-1"); } else{ for(i=0;i<=len-n;i++){ for(j=0;j<n;j++){ printf("%c",s[i+j]); } printf(" "); } } return 0; }
C++14 解法, 执行用时: 1ms, 内存消耗: 372KB, 提交时间: 2020-05-20
#include<stdio.h> #include<string.h> int main(){ char s[100000]; int len,i,j,n; scanf("%s",s); scanf("%d",&n); len = strlen(s); if(len<n||n<=0){ printf("-1"); } else{ for(i=0;i<=len-n;i++){ for(j=0;j<n;j++){ printf("%c",s[i+j]); } printf(" "); } } return 0; }
C 解法, 执行用时: 2ms, 内存消耗: 300KB, 提交时间: 2021-08-20
#include<stdio.h> #include<string.h> int main() { char a[1000]; while (scanf("%s",a)!=EOF) { int n,i,j; scanf("%d",&n); if(n>strlen(a)||n<=0) { printf("-1\n"); return 0; } for(i=0;i<strlen(a);i++) { if(i+n<=strlen(a)) { for(j=i;j<i+n;j++) { printf("%c",a[j]); } printf(" "); } } printf("\n"); } return 0; }
C++14 解法, 执行用时: 2ms, 内存消耗: 340KB, 提交时间: 2020-05-18
#include<stdio.h> #include<string.h> int main(){ char s[100000]; int len,i,j,n; scanf("%s",s); scanf("%d",&n); len = strlen(s); if(len<n||n<=0){ printf("-1"); } else{ for(i=0;i<=len-n;i++){ for(j=0;j<n;j++){ printf("%c",s[i+j]); } printf(" "); } } return 0; }
C 解法, 执行用时: 2ms, 内存消耗: 360KB, 提交时间: 2020-04-23
#include<stdio.h> #include<string.h> int main(){ char s[100000]; int len,i,j,n; scanf("%s",s); scanf("%d",&n); len = strlen(s); if(len<n||n<=0){ printf("-1"); } else{ for(i=0;i<=len-n;i++){ for(j=0;j<n;j++){ printf("%c",s[i+j]); } printf(" "); } } return 0; }