P11035
分析
根据题目,我们发现一下关键点:
- 可以任意次进行操作。
- 操作完后 a i a_i ai 会取反。
接下来一个个分析:
- 第一项我们发现,我们可以不用分析该如何取,因为他有无限次操作,所以每一个数我们都可取到。
-
a
i
a_i
ai 用完后会取反,也就是当
i
i
i 为奇数时,操作
1
1
1 次等于操作
i
i
i 次。
并且我们发现,如果 a i a_i ai 是负数,对答案无贡献,所以题目就是要求我们扫描一遍数组并将正数相加。
代码
#include<bits/stdc++.h>
using namespace std;
int n,a[100005];
long long sum;
int main(){
ios::sync_with_stdio(0);
cin.tie(0);
cout.tie(0);
cin>>n>>sum;
for(int i=1;i<=n;i++)cin>>a[i],sum+=max(0,a[i]);
cout<<sum;
return 0;
}
3129

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



