#include<bits/stdc++.h>
using namespace std;
int main()
{
int n,k,a[505];
cin>>n>>k;
for(int i=1;i<=n;i++)
{
scanf("%d",&a[i]);
}
int rest;
int sum=0;
for(int i=2;i<=n;i++)
{
if(a[i]+a[i-1]>=k)
{
continue;
}
else
{
rest=k-(a[i]+a[i-1]);
a[i]+=rest;
sum+=rest;
}
}
printf("%d\n",sum);
for(int i=1;i<=n;i++)
{
printf("%d ",a[i]);
}
return 0;
}
codeforces 732B Cormen — The Best Friend Of a Man (水题)
最新推荐文章于 2018-08-09 23:00:14 发布
本文介绍了一个使用C++实现的简单算法,该算法通过增加指定数组中某些元素的值来确保任意两个相邻元素之和不低于特定阈值k。程序首先读取数组长度n和阈值k,接着输入数组元素,并通过迭代检查每一对相邻元素之和是否小于k,如果小于,则进行必要的调整以满足条件。最后输出调整所需的最小总增量及调整后的数组。
1094

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



