Êý¾Ý½á¹¹¿Î³ÌÉè¼Æ_ÅÅÐòËã·¨±È½Ï[ÍêÕû°æ]61601 ÏÂÔØ±¾ÎÄ

¿ìËÙÅÅÐò Ñ¡ÔñÅÅÐò ¶ÑÅÅÐò »ùÊýÅÅÐò O(n2) O(n2) O(n*log2n) O(n*log2n) O(n*log2n) O(n2) O(n*log2n) O(n2) ²»Îȶ¨ Îȶ¨ ²»Îȶ¨ Îȶ¨ 10000¸öÊý¾ÝµÄʱ¼ä±È½Ï£º Ëã·¨Ãû³Æ Ö±½Ó²åÈëÅÅÐò ÕÛ°ë²åÈëÅÅÐò ÆðÅÝÅÅÐò ¿ìËÙÅÅÐò Ñ¡ÔñÅÅÐò ¶ÑÅÅÐò »ùÊýÅÅÐò ÓÃʱ 0.25 0.219 0.704 0.016 0.39 0.0001 0.016 Áù¡¢²âÊÔÓÃÀý

1¡¢Ê×ÏÈÑ¡ÔñÐèÒªÅÅÐòµÄÊý×Ö¸öÊý£¬±ÈÈçÊäÈë5000¡£

. . .

2¡¢ÏµÍ³ÏÔʾ³öËæ»ú²úÉúµÄËæ»úÊý¡£

Óû§Ñ¡ÔñÅÅÐò·½Ê½£¬±ÈÈçÑ¡Ôñ1.Ö±½Ó²åÈëÅÅÐò

3¡¢ÏµÍ³½«Ëæ»úÊýÅÅÐòºóÕûÆëµÄÏÔʾ³öÀ´¡£

4¡¢Óû§¿ÉÒÔÑ¡Ôñ¼ÌÐøÅÅÐò»òÕßÍ˳öϵͳ¡£

Æß¡¢³ÌÐòÔ´´úÂë

/**********************************************************************************************

µÚÁùÌ⣺ÅÅÐòËã·¨±È½Ï

Éè¼ÆÒªÇó£ºÀûÓÃËæ»úº¯Êý²úÉúN¸öËæ»úÕûÊý£¨N = 500£¬1000£¬1500£¬2000£¬2500£¬¡­,30000£©£¬

. . .

ÀûÓÃÖ±½Ó²åÈëÅÅÐò¡¢ÕÛ°ë²åÈëÅÅÐò£¬ÆðÅÝÅÅÐò¡¢¿ìËÙÅÅÐò¡¢||Ñ¡ÔñÅÅÐò¡¢¶ÑÅÅÐò£¬»ùÊýÅÅÐòÆßÖÖÅÅÐò·½·¨

£¨¿ÉÌí¼ÓÆäËüÅÅÐò·½·¨£©½øÐÐÅÅÐò£¨½á¹ûΪÓÉСµ½´óµÄ˳Ðò£©£¬²¢Í³¼ÆÃ¿Ò»ÖÖÅÅÐòËùºÄ·ÑµÄʱ¼ä£¨Í³¼Æ

Ϊͼ±í×ø±êÐÎʽ£©¡£

************************************************************************************************/ #include \#include \

#include \¼ÆÊ±

#define ERROR 0 #define OK 1

#define OVERFLOW -2

#define MAXSIZE //Óû§×Ô¼º¹æ¶¨ÅÅÐòµÄÊý×ֵij¤¶È

typedef int Status;

typedef struct {

int *r; // r[0]ÏÐÖÃ

int length; //˳Ðò±íµÄ×ܳ¤¶È }Sqlist;

//¹¹ÔìÒ»¸ö¿ÕÏßÐÔ±í

Status InitSqlist(Sqlist &L) { L.r=(int *)malloc(MAXSIZE*sizeof(int)); //·ÖÅä´æ´¢¿Õ¼ä if(!L.r) { printf(\´æ´¢·ÖÅäʧ°Ü£¡\ exit(0); } //´æ´¢·ÖÅäʧ°Ü L.length=0;//³õʼ³¤¶ÈΪ0 return OK; }

//ÊäÈëËæ»úÊý²¢ÏÔʾÔÚ½çÃæÉÏ

Status ScanfSqlist(int &N,Sqlist &L) { int i;