func_code_string: #include <bits/stdc++.h>   using namespace std;   int M = 1e9 + 7;   int main() {     ios::sync_with_stdio(false);     cin.tie(0);     cerr.tie(0);     int n, a[100005], sum = 0;     cin >> n;     for (int i = 0; i < n; i++) cin >> a[i], sum += a[i];     sort(a, a + n);     int p[] = {0, -1, -1}, ct = 0, f = 0;     for (int i = 0; i < n; i++) {       if ((a[i] % 3 == sum % 3) && p[sum % 3] == -1 && sum % 3 != 0)         p[sum % 3] = i;       if (a[i] == 0) ct++;     }     if ((n == 1 && a[0] == 0) || (a[n - 1] == 0) ||         (ct >= n - 1 && sum % 3 != 0)) {       cout <<  0 ;       return 0;     }     if (p[sum % 3] == -1 && a[0] == 0) {       if (sum % 3 == 2) {         int p1 = -1, p2 = -1;         for (int i = 0; i < n; i++) {           if (a[i] % 3 == 1) {             if (p1 == -1)               p1 = i;             else if (p2 == -1)               p2 = i;           }         }         if (p2 == -1) {           cout <<  0 ;         } else {           for (int i = n - 1; i >= 0; i--) {             if (i != p1 && i != p2) {               if (a[i] == 0 && f == 0) {                 cout <<  0 ;                 return 0;               } else                 f = 1, cout << a[i];             }           }         }       } else if (sum % 3 == 1) {         int p1 = -1, p2 = -1;         for (int i = 0; i < n; i++) {           if (a[i] % 3 == 2) {             if (p1 == -1)               p1 = i;             else if (p2 == -1)               p2 = i;           }         }         if (p2 == -1) {           cout <<  0 ;         } else {           for (int i = n - 1; i >= 0; i--) {             if (i != p1 && i != p2) {               if (a[i] == 0 && f == 0) {                 cout <<  0 ;                 return 0;               } else                 f = 1, cout << a[i];             }           }         }       }       return 0;     }     if (a[0] != 0 || p[sum % 3] == -1) {       cout << -1;       return 0;     } else {       for (int i = n - 1; i >= 0; i--) {         if (i != p[sum % 3] || a[i] == 0) {           if (f == 0 && a[i] == 0) {             cout <<  0 ;             return 0;           } else             f = 1, cout << a[i];         }       }     }     return 0;   }   