// #include // Temp fix for gcc13 global pragma // #pragma GCC target("avx2,bmi2,popcnt,lzcnt") // #pragma GCC optimize("O3,unroll-loops") #include // #include using namespace std; #if __cplusplus >= 202002L using namespace numbers; #endif int main(){ cin.tie(0)->sync_with_stdio(0); cin.exceptions(ios::badbit | ios::failbit); int n, k; cin >> n >> k; vector l; array r{}; long long res = 0; for(auto i = 0; i < n; ++ i){ int x; cin >> x; if(x <= k){ l.push_back(x); } else{ ++ r[x & 1]; res += x >> 1; } } ranges::sort(l | ranges::views::reverse); for(auto i = 0; i < (int)l.size(); i += 2){ res += l[i]; } int turn = (int)l.size() & 1; if(r[0] & 1){ turn ^= 1; } while(r[1] --){ if(turn == 1){ ++ res; } turn ^= 1; } cout << res << "\n"; return 0; } /* */