rt
这是源代码:
#include<bits/stdc++.h>
using namespace std;
int m;
struct president{
int num;
string ticket;
}ps[10000];
bool cmp(president a,president b){
if(a.ticket.length()>b.ticket.length()) return 1;
else if(a.ticket.length()==b.ticket.length()) return a.ticket>b.ticket;
}
int main(){
cin>>m;
for(int i=0;i<m;i++){
cin>>ps[i].ticket;
ps[i].num=i+1;
}
sort(ps,ps+m,cmp);
/* for(int i=0;i<m;i++){
cout<<ps[i].num<<endl<<ps[i].ticket<<endl;
}*/
cout<<ps[0].num<<endl<<ps[0].ticket<<endl;
}
看了其他帖子说是linux和windows之间有差异导致的,就到在线IDE上测了一下
这是Windows下排出来的顺序
4
1022356
5
985678
1
98765
3
87954
2
12365
这是洛谷在线IDE排出来的顺序
5
985678
4
1022356
1
98765
3
87954
2
12365
想了半天也没想到咋解决,希望有人可以帮帮我qwqqwq
(萌新轻喷qwq)