Я пытаюсь сформировать наибольшее число из элементов массива.Моя реализация, приведенная ниже, работает нормально для некоторых случаев, а для некоторых других она дает ошибку «Прервать сигнал от abort (3) (SIGABRT)».Зачем?Помоги мне!
#include <iostream>
#include<bits/stdc++.h>
using namespace std;
int main() {
int t;
cin>>t;
while((t--)>0){
int n;
cin>>n;
int a[n];
string s="";
for(int i=0;i<n;i++){
cin>>a[i];
if(i==0){s+=to_string(a[i]); continue;}
string s1 = s+to_string(a[i]); //sX
string s2 = to_string(a[i])+s; //Xs
if(stoi(s1)>=stoi(s2))s=s1;
else s = s2;
}
cout<<s<<endl;
}
return 0;
}
В следующем случае мой код выдает ошибку
4 //size of array
54 546 548 60 //elements of array