一开始拿了19分,搜了搜别人代码都是用string的,突然反应过来id用int可能会导致输出id不正确(比如是0000000什么的),改了以后就全都过啦!
代码没有用map,如下:
#include<bits/stdc++.h>
using namespace std;
int N,M;
struct book{
string id,year;
string title,author,key,publisher;
};
book bk[10001];
int sorts[1001];
int flag=0;
bool comp(book a,book b){
return a.id<b.id;
}
int main()
{
cin>>N;
int i,j,k,l;
string s1,s2,s3,s4;
for(i=0;i<N;i++){
cin>>bk[i].id;
getchar();
getline(cin,bk[i].title);
getline(cin,bk[i].author