#include <stdio.h>
/*输入一个整数数组和一个整数k,按以下方式修改该数组
1.选择某个下标 i 并将 nums[i] 替换为 -nums[i]
2.重复这个过程恰好 k 次。可以多次选择同一个下标 i 。
以这种方式修改数组后,返回数组可能的最大和 。
(这次还是交博客链接)
输入:nums = [4,2,3], k = 1
输出:5
*/
int main()
{
int nums[99];
char a[99];//存垃圾字符
int k,i,j,i0;
int sum,sums;
printf("nums = [");
for(i = 0;a[i-1] != ']'; i++ )
{
scanf("%d",&nums[i]);
scanf("%c",&a[i]);
sum = i + 1;
}
printf("k = ");
scanf("%d",&k);
for(i0 = 0; i0 < k; i0++ )
{
int min = nums[0];
for(i = 0; i < sum; i++ )
{
if (nums[i] < min)
{
min = nums[i];
j = i;
}
}
nums[j] = -nums[j];
}
for(i = 0;i < sum ; i++ )
{
sums += nums[i];
}
printf("%d",sums);
return 0;
}
Matrix工作室21.12.6修改数组作业
最新推荐文章于 2024-07-25 13:44:24 发布