| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1951 人关注过本帖
标题:Output Limit Exceeded的一道题,求帮忙要怎么解决
取消只看楼主 加入收藏
x三生石x
Rank: 1
等 级:新手上路
帖 子:34
专家分:0
注 册:2018-10-27
结帖率:70%
收藏
已结贴  问题点数:20 回复次数:3 
Output Limit Exceeded的一道题,求帮忙要怎么解决
题目挺简单的,我用函数strncpy去做,但是一直是Output Limit Exceeded,自己找不出哪个地方出问题了,求大家帮忙看看。

题如下:
给出一个字符串s;给出两个整数 x, y ,请你截取从字符串的第 x 个字符开始,长度为y的子串。

如果 x+y > s的长度,则接着从头开始取下去。约定:字符串首字符的位置是0

Input
有多个测试用例。每个测试用例占2行。

第一行是一个字符串s,长度不超过10万。

第二行是两个整数 x 和 y ,表示从第 x 个位置开始取 y 个字符,0 ≤x,y ≤ s的长度。

Output
为每个测试用例单独输出一行结果:取得的子串。如果无法取得长度 > 0 的子串,输出 none

Sample Input:
abcde
3 3
0123456789
7 3
Sample Output:
dea
789

代码如下:
#include<stdio.h>
#include<string.h>
int main()
{
    char a[100000];
    int x,y,t;
    while(scanf("%s",&a)!=EOF)
    {
        char b[100000]={},c[100000]={};
        scanf("%d%d",&x,&y);
        if(y<=0)
            printf("none\n");
        else{
            t=strlen(a);
            if(x+y<=t){
            strncpy( b , a+x ,y );
            puts(b);}
            else{
            strncpy( b , a + x , y );
            strncpy( c,a , y - ( t - x) );
            printf("%s",b);
            printf("%s\n",c);
            }
        }
    }
    return 0;
}



搜索更多相关主题的帖子: Output Limit 字符串 长度 子串 
2019-01-19 00:01
x三生石x
Rank: 1
等 级:新手上路
帖 子:34
专家分:0
注 册:2018-10-27
收藏
得分:0 
有人帮忙看看吗
2019-01-19 08:44
x三生石x
Rank: 1
等 级:新手上路
帖 子:34
专家分:0
注 册:2018-10-27
收藏
得分:0 
回复 3楼 豆豆的滴
没有吧,自己运行也没毛病
2019-01-19 14:44
x三生石x
Rank: 1
等 级:新手上路
帖 子:34
专家分:0
注 册:2018-10-27
收藏
得分:0 
回复 6楼 幻紫灵心
谢谢解答,我试试看
2019-01-21 16:08
快速回复:Output Limit Exceeded的一道题,求帮忙要怎么解决
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.029574 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved