紫竹


私信TA

用户名:urnachan

访问量:30194

签 名:

等  级
排  名 305
经  验 5575
参赛次数 0
文章发表 72
年  龄 0
在职情况 学生
学  校 合肥工业大学
专  业

  自我简介:

TA的其他文章

#include "stdafx.h"

#define max 100

void bubblesort(int a[],int b[], int n)  //数组a从大到小,并且b同步变化

{

int i, j, t,t1;

for (i = 0; i < n - 1; i++)

{

for (j = 0; j < n - 1 - i; j++)

{

if (a[j] < a[j + 1])

{

t = a[j];

a[j] = a[j + 1];

a[j + 1] = t;

t1 = b[j];

b[j] = b[j + 1];

b[j + 1] = t1;

}

}

}

}

int main()

{

int a[max][2],n,i,j=0,sum1=0, sum2 = 0,sum=0, x[max],y[max];

scanf("%d", &n);

for (i = 0; i < n; i++)

{

scanf("%d%d", &a[i][0], &a[i][1]);

if (a[i][0] + a[i][1] > 0)  //相加小于0直接排除,并把a,b存到x y中

{

x[j] = a[i][0];

y[j] = a[i][1];

j++;

}

}

bubblesort(x,y,j);   //x数组从大到小排序,然后进行累加,不符合条件置0

for (i = 0; i < j; i++)

{

sum1 += x[i];

if (sum1 < 0)

{

x[i] = 0;

y[i] = 0;

}

}

bubblesort(y, x, j); //y数组从大到小排序,然后进行累加

for (i = 0; i < j; i++)

{

sum2 += y[i];

if (sum2 < 0)

{

x[i] = 0;

y[i] = 0;

}

}

for (i = 0; i < j; i++)

{

sum += x[i] + y[i];

}

printf("%d", sum);

return 0;

}



 

0.0分

2 人评分

  评论区

  • «
  • »