AT1313 カードと兄妹
思路:
输入数组后将对它排序,直接用选择排序模板先排好序,注意下标从1开始,再用个for循环统计奇数还是偶数大,每次循环弄个ans即可,最后输出ans就好了。
代码:
#include <bits/stdc++.h>
using namespace std;
int n, num[1010];
int ans;
int main() {
cin >> n;
for (int i = 0; i < n; ++i) {
cin >> num[i];
}//输入不多说
for(int i;i<=n-1;i++){
int pos=i;
for(int j=i+1;j<n;j++){
if(num[j]<num[pos]) pos=j;
}
swap(num[i],num[pos]);
}//选择排序模板
for (int i = n - 1; i >= 0; i -= 2) {
ans += num[i];
}//统计ans
cout << ans << endl;
return 0;
}
这篇博客介绍了如何通过C++实现选择排序算法,并应用该算法统计输入数组中奇数元素的和。程序首先对数组进行选择排序,然后遍历排序后的数组,累加奇数项得到结果。
4万+

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



