标签:
不得不说,有时候人傻,真的是没救了,WA了N次,最后才发现字符串长度应该至少是105的,WA的惨死。。
关于字符串处理,真的是要靠思考方式来拯救的,比赛的时候还煞费心机的处理了串首空格的读入,最后还是fst了,事实上正确的打开方式只能是处理后5个字符。
还有就是真的又加深了对cmp和<号的重载,尽管至今对于其中迭代器的原理不理解。
1 #include<cstdio> 2 #include<map> 3 #include<queue> 4 #include<stack> 5 #include<vector> 6 #include<algorithm> 7 #include<cstring> 8 #include<cmath> 9 #include<iostream> 10 #include<set> 11 #include<stdlib.h> 12 using namespace std; 13 struct Node{ 14 char str[120]; 15 int len; 16 int date=0; 17 bool operator<(const Node &b)const{ 18 return date>b.date; 19 } 20 }per[120]; 21 int n,t; 22 bool cmp(const Node x,const Node y) 23 { 24 return x.date>y.date; 25 } 26 int main() 27 { 28 cin>>n; 29 getchar(); 30 while(n--) 31 { 32 cin>>t; 33 getchar(); 34 for(int i=0;i<t;i++) 35 { 36 per[i].date=0; 37 gets(per[i].str); 38 per[i].len=strlen(per[i].str); 39 for(int j=per[i].len-4;j<per[i].len;j++) 40 { 41 per[i].date=per[i].date*10+per[i].str[j]-‘0‘; 42 } 43 per[i].len-=5; 44 per[i].str[per[i].len]=‘\0‘; 45 } 46 //cout<<i<<endl; 47 sort(per,per+t); 48 for(int i=0;i<t;i++) 49 // printf("%s\n",per[i].str); 50 puts(per[i].str); 51 } 52 return 0; 53 }
其他,待补题
标签:
原文地址:http://www.cnblogs.com/sunshiniing/p/4810504.html