func_code_string: #include <bits/stdc++.h>   using namespace std;   bool sortbysec(const pair<int, int> &a, const pair<int, int> &b);   long long int gcd(long long int a, long long int b);   int prime(int n);   int main() {     ios_base::sync_with_stdio(false);     cin.tie(NULL);     cout.tie(NULL);     long long int t = 1;     while (t--) {       long long int n, m, sum;       cin >> n >> m;       long long int a[n];       for (int i = 0; i < n; i++) cin >> a[i];       sort(a, a + n, greater<int>());       for (int k = 1; k <= n; k++) {         sum = 0;         for (int i = 0; i < n; i++) {           sum += max(0LL, a[i] - (i / k));         }         if (sum >= m) {           cout << k << endl;           break;         }       }       if (sum < m) cout << -1 << endl;     }   }   bool sortbysec(const pair<int, int> &a, const pair<int, int> &b) {     return (a.second < b.second);   }   long long int gcd(long long int a, long long int b) {     if (b == 0) return a;     return gcd(b, a % b);   }   int prime(int n) {     int flag = 1;     for (int i = 2; i <= sqrt(n); i++) {       if (n % i == 0) {         flag = 0;         break;       }     }     return flag;   }   