SRM500 Div2 Easy - SRMCards

問題

重複しない数字が書かれたn枚のカードがある
kが書かれたカードを取り除くとk-1, k+1が書かれたカードも消える
最大で何枚のカードを手で取り除けるか

解法

ソートして端から取り除くのが最善
(端以外から取り除くと1回で最大3枚消えるが端から順だと最大2枚しか消えないから)

class SRMCards {
	public:
	int maxTurns(vector<int> a) {
		sort(all(a));
		int res = 0;
		while (!a.empty()) {
			res++;
			if (2<=a.size() && a[a.size()-1]==a[a.size()-2]+1) a.pop_back();
			a.pop_back();
		}
		return res;
	}
};