#include
#include
using namespace std;
bool compare(string a , string b){
return a>b;
}
void largeNumber(string s[1000] , int n){
sort(s , s+n , compare);
for(int i=0; i<n; i++){
cout << s[i];
}
}
int main() {
int t;
cin >> t;
while(t–){
string s[1000];
int n;
cin >> n;
for(int i=0; i<n ;i++){
cin >> s[i];
}
largeNumber(s , n);
}
return 0;
}
Coding is not passing all the test cases
helo @aasif2364
21 and 2
if u sort in decreasing order then
the number formed will bw 212 but the correct result is 221.
this code is failing for the same case.
u can use sort function to sort tge input in ascending order.if u want to make any chsanges in sorting order then u need to pass comparator.
for this the logic is if a and b are two numbers then u can combine them in two ways either ab or ba right?
which ever combination give us maxium we will consider that order.
so just apply same logic in ur comparator and sort using this comparator
bool cmp(string a,string b){
return a+b > b+a;
}
again all test cases failed
pls savr ur code at cb ide and share its link with me
I hope I’ve cleared your doubt. I ask you to please rate your experience here
Your feedback is very important. It helps us improve our platform and hence provide you
the learning experience you deserve.
On the off chance, you still have some questions or not find the answers satisfactory, you may reopen
the doubt.