水题一道,注意拍下序就好处理了
代码如下:
#include <bits/stdc++.h>
using namespace std;
int a[10], b[10];
int main(void) {
for(int i=0; i<6; ++i)
scanf("%d", &a[i]);
sort(a, a+6);
int flag = -1;
for(int i=0; i<3; ++i) {
if(a[i]==a[i+3]) {
flag = i;
break;
}
}
int cnt = 0;
for(int i=0; i<flag; ++i) {
b[cnt++] = a[i];
}
for(int i=flag+4; i<6; ++i) {
b[cnt++] = a[i];
}
if(flag == -1)
puts("Alien");
else if(b[0] < b[1])
puts("Bear");
else if(b[0] == b[1])
puts("Elephant");
else puts("Alien");
return 0;
}
本文介绍了一种处理包含重复元素数组的排序方法,并通过示例代码展示了如何根据特定条件输出不同结果。该算法首先对输入数组进行排序,然后根据重复元素的位置来决定最终输出,可能的结果包括'Alien'、'Bear'、'Elephant'等。
2860

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



