[Kubic] Addition 题解
[Kubic] Addition 题解
mzyc_jx
·
2021-11-05 18:02:42
·
题解
Addition
前言:
这是本蒟蒻AC的第二道月赛题,这道题是真的简单,我骗分骗着骗着就AC了。
思路:
当 y\geq 0 时,x+y\geq x-y
当 y\leq 0 时,x+y\leq x-y
综上,可以发现 x+|y| 最大。
所以贪心策略为:加每个数的绝对值(第一个数不行)。
注意:
第一个数不能加他的绝对值!
sum 记得开 long long !
CODE:
#include
using namespace std;
int a[100001];
int main()
{
ios_base::sync_with_stdio(0);
cin.tie(0);
cout.tie(0);//比赛时用来加速
int n,b,c;
cin>>n;
cin>>a[1];//第一个数要单独判断(可能为负)
long long sum=a[1];
for(int i=2;i<=n;i++)
{
cin>>a[i];
sum+=abs(a[i]);//累加绝对值
}
cout< return 0; } 十年OI一场空,不开long long见祖宗!