Online Judge | Problem Set | Authors | Online Contests | User | ||||||
---|---|---|---|---|---|---|---|---|---|---|
Web Board Home Page F.A.Qs Statistical Charts | Current Contest Past Contests Scheduled Contests Award Contest |
总是Runtime error,我用了很多指针,但是我在VC6里运行得很好,结果完全正确,算法我保证是对的,但是总是不能accepted.#include <iostream> #include <string> using namespace std; #define numString 100 #define lenString 50 typedef struct { char *p; int key; }strDNA; int getKey(char p[],int n) //得到mesure值 { int j,key = 0; char *temp; for( int i = 0; i < n-1;p++, i ++) { for (temp = p + 1,j = i +1;j < n;temp ++,j++) { if( *p > *temp) { key ++; } } } return key; } void bubblesort(strDNA p[],int n) //稳定排序方法,冒泡排序 { int i,j,tag; strDNA temp; for( i=0,tag=1; tag ==1 && i < n-1; i++) { tag = 0; for (j = 0; j < n-i-1; j ++) { if(p[j].key > p[j+1].key) { temp = p[j]; p[j] = p[j+1]; p[j+1] = temp; tag = 1; } } } } int main () { int m,n,i=0; cin>>n>>m; strDNA dna[numString]; string temp; for (i = 0; i < n;i++) { dna[i].p = new char; cin>>temp; strcpy(dna[i].p,temp.c_str ()); } for ( i = 0; i < m; i ++) { dna[i].key = getKey(dna[i].p,n); } bubblesort(dna,m); cout<<endl; for( i = 0; i < m ; i ++ ) { cout<<dna[i].p<<endl; } return 0; } Followed by:
Post your reply here: |
All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator