解题思路:先把每州人数放入数组,再按从小到大排序,然后把前州数一半加一的元素各取其一半加一再相加。
注意事项:
参考代码:
#include <stdio.h> #include <stdlib.h> int cmp(const void *a,const void *b) { return *(int *)a - *(int *)b; } int main() { int N; while(scanf("%d",&N) != EOF && N != 0) { int a[N]; for(int i = 0;i < N;i++) scanf("%d",&a[i]); qsort(a, N, sizeof(int), cmp); N = N / 2 + 1; int sum = 0; for(int i = 0;i < N;i++) sum += a[i] / 2 + 1; printf("%d\n",sum); } return 0; }
0.0分
0 人评分