#include using namespace std; typedef long double ld; typedef long long ll; typedef unsigned long long ull; #define MP make_pair #define FOR(i,a,b) for(int i=(a);i<=(b);i++) #define FORR(x,arr) for(auto& x:arr) #define VI vector #define PII pair #define FI first #define SE second #define ALL(x) (x).begin(), (x).end() const int INF=1<<30; const ll LINF=1LL<<60 ; const ll MOD=1e9+7 ; templatebool chmax(T &a, const T &b) { if (abool chmin(T &a, const T &b) { if (b v; FOR(i,1,n-1) if(i != now) v.push_back(a[i]); l = 0; r = v.size()-1; int num = 0; while(l> n >> m; FOR(i,0,n-1){ cin >> a[i]; } sort(a+1, a+n); int R = n-1; if(solve(R) == false){ cout << -1 << endl; return 0; } for(int i=20;i>=0;i--){ if(solve(R-(1<