Online JudgeProblem SetAuthorsOnline ContestsUser
Web Board
Home Page
F.A.Qs
Statistical Charts
Problems
Submit Problem
Online Status
Prob.ID:
Register
Update your info
Authors ranklist
Current Contest
Past Contests
Scheduled Contests
Award Contest
User ID:
Password:
  Register

总是TLE,不解,求指点,附代码

Posted by artifly at 2010-06-06 21:50:48 on Problem 3753
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

int SafeStrcpy2KeyWord(char* pDestBuffer,	//拷贝的目的地地址
		       char* pSourceString,	//拷贝的源地址
		       int nDestBufferSize,	//拷贝的目的地缓冲区长度
		       char* szKeyWord)	//指定关键字符串
{
	char *p;
	int len;

	if(NULL == szKeyWord)
	{
		strncpy(pDestBuffer, pSourceString, nDestBufferSize-1);
		pDestBuffer[nDestBufferSize-1] = '\0';
		return strlen(pDestBuffer);
	}

	p = strstr(pSourceString, szKeyWord);

	if((NULL == p) || (pSourceString == p)) return 0;
	len = p - pSourceString;
	strncpy(pDestBuffer, pSourceString, len);
	pDestBuffer[len] = '\0';

	return len;
}



int main(void)
{
	char src_str[256];
	char key_str[16];
	char out_str[256];
	char *p;
	int len;

	fgets(src_str, sizeof(src_str), stdin);
	while(strncmp(src_str, "EOF", 3))
	{
		fgets(key_str, sizeof(key_str), stdin);
		while(strncmp(key_str, "END", 3))
		{			
			if(!strncmp(key_str, "NULL", 4))
			{
				p = NULL;
			}
			else 
			{
				p = key_str;
				key_str[strlen(key_str)-1] = '\0';
			}

			len = SafeStrcpy2KeyWord(out_str, src_str, 256, p);

			if( 0 == len) printf("0 NULL\n");
			else
			{
				printf("%d %s\n", len, out_str);
			}

			fgets(key_str, sizeof(key_str), stdin);
		}

		fgets(src_str, sizeof(src_str), stdin);
	}
}

Followed by:

Post your reply here:
User ID:
Password:
Title:

Content:

Home Page   Go Back  To top


All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator