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 |
自己测试都对,提交总是WA,求大神指点#include <iostream> using namespace std; struct { char str[51]; int next; } arr[1100]; int top=700; #define New(x) {x=top++;arr[x].next=-1;} int main() { //freopen("1007.in","r",stdin); for(int i=0; i<100; i++) { arr[i].str[0]=0; arr[i].next=-1; } int m,n; cin>>m>>n; for(int i=0; i<n; i++) { char temp[51]; cin>>temp; int A,C,G,T; A=C=G=T=0; int srt=0; for(int j=m-1; j>=0; j--) switch(temp[j]) { case 'A': A++; break; case 'C': C++; srt+=A; break; case 'G': G++; srt+=A+C; break; case 'T': srt+=A+C+G; break; } if(arr[srt].str[0]!=0) { while(arr[srt].next!=-1) srt=arr[srt].next; New(arr[srt].next); srt=arr[srt].next; } int j; for(j=0; j<m; j++) arr[srt].str[j]=temp[j]; arr[srt].str[j]='\0'; } int cnt=0; for(int i=0; ;i++) { if(cnt==n) break; if(arr[i].str[0]!=0) { int t=i; do { cout<<arr[t].str<<endl; t=arr[t].next; cnt++; }while(t!=-1); } } return 0; } Followed by: Post your reply here: |
All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator