文章
36
粉丝
505
获赞
55
访问
370.6k
因为答案要从小到大排列,所以先将整个数组排序。再来个二重循环输出。
这题关键是去重,之前已经输出过的一对就不要再输出了,所以创建了一个二维数组记录这对数有没有输出过
#include <bits/stdc++.h>
using namespace std;
int n, a[35];
bool b[100][100];
int main()
{
cin >> n;
for (int i = 1; i <= n; i++)
cin >> a[i];
sort(a + 1, a + n + 1);//排序
for(int i = 1; i <= n; i++)
for (int j = 1; j <= n; j++)
{
if ( j != i && b[a[i]][a[j]]==0)
{
b[a[i]][a[j]] = 1;
printf("(%d,%d)\n", a[i], a[j]);
}
}
return 0;
}
登录后发布评论
暂无评论,来抢沙发