- 论坛徽章:
- 11
|
本帖最后由 Susake_ 于 2014-05-18 09:19 编辑
暂时也只能想到O(k^2)的~~- #include <stdio.h>
- #include <stdlib.h>
- #include <string.h>
- int comp(const void *a, const void *b)
- {
- return *(int *)b - *(int *)a;
- }
- int main(int argc, char *argv[])
- {
- int a[4] = {3, 2, 1}, b[4] = {4, 2, 3};
- int max[4], i, j, k;
- qsort(a, 3, sizeof(int), comp);
- qsort(b, 3, sizeof(int), comp);
- while(scanf("%d", &k) != EOF)
- {
- memset(max, 0, sizeof(max));
- for(i = 0; i < k; i++)
- for(j = 0; j < k; j++)
- if(a[i] + b[j] > max[i]) max[i] = a[i] + b[j];
- for(i = 0; i < k; i++)
- printf("%d\n", max[i]);
- }
- return 0;
- }
复制代码 |
|