#include<bits/stdc++.h>
using namespace std;
bool compare(string a,string b)
{
if(a.length()<=b.length() && b.substr(0,a.length())==a)
return true;
//if(a.length()>=b.length() && a.substr(0,b.length())==b)
//return true;
else
return a<b;
}
int main()
{
int t;
cin>>t;
string s[t];
for(int i=0;i<t;i++)
cin>>s[i];
sort(s,s+t,compare);
for(int i=0;i<t;i++)
cout<<s[i]<<"\n";
return 0;
}
if the input is
apple
bat
batman
just explain the full code taking the example