what is wrong in my code
#include
#include
#include
using namespace std;
bool compare(string s1, string s2){
if(s1.find(s2)<0)
{
return s1<s2;
}
else
{//for prefix string
return s1>s2;
}
}
int main() {
int n;
string s,a[1000];
cin>>n;
for(int i=0;i<n;i++){
cin>>s;
a[i]=s;
}
sort(a,a+n,compare);
for(int i=0;i<n;i++){
cout<<a[i]<<endl;
}
return 0;
}