2103A. Common Multiple1234567891011121314void solve() { int n; cin >> n; vector<int> a(n); for (int i = 0; i < n; i++) { cin >> a[i]; } sort(a.begin(), a.end()); a.erase(unique(a.begin(), a.end()), a.end()); cout << a.size() << endl;} 2103B. Binary Typewriter交换一次至多消除两处不同 res - 2,但不可能完全消除不同,res 至少剩 1。123456789101112131415161718void solve() { int n; cin >> n; string s; cin >> s; s = '0' + s; int res = 0; for (int i = 0; i < n; i++) { res += s[i] != s[i + 1]; } if (res) { res = max(1, res - 2); } res += n; cout << res << endl;} 2103C. Median Splits当ai⩽ka_{i} \leqslant kai⩽k 时置ai=1a_{i}=1ai=1,否则置 0,问题化为这个 01 串能否分成三段,每段中位数的中位数为 1。