constint N = 1e5+100; classSolution { int cnt[N]; int sum[N]; public: intminChanges(vector<int>& a, int k){ int n = a.size(); for (int i = 0;i <= n / 2 - 1;i ++) { int o = a[n - i - 1]; int c = a[i]; int r = abs(o - c); cnt[r] ++; int ans= max(max(o,c),k-min(o,c)); sum[ans] ++; } for (int i = 1;i <= k;i ++) { sum[i] += sum[i - 1]; } int res =1e9; for (int i = 0;i <= k;i ++) { int tmp = cnt[i]; int x = n / 2 - tmp; res = min (res,x + sum[i - 1]); } return res; } };