http://codeforces.com/contest/370/problem/C
/*31ms,0KB*/
#include<iostream>
#include<algorithm>
using namespace std;
int C[5005];
int main()
{
int N, M;
cin >> N >> M;
for (int i = 0; i < N; i++) cin >> C[i];
sort(C, C + N);
int cnt = 0;
for (int i = 0; i < N; i++) cnt += (C[i] != C[(i + N / 2) % N]);
cout << cnt << endl;
for (int i = 0; i < N; i++) cout << C[i] << ' ' << C[(i + N / 2) % N] << endl;
return 0;
}

本文详细解析了Codeforces竞赛中的一道C题,通过优化数组操作与计数技巧,实现了高效的算法解决方案。文章涵盖了题目的背景、解题思路、关键代码实现以及运行结果分析。

被折叠的 条评论
为什么被折叠?



