我好菜啊,ARC注定出不了F系列。要是出了说不定就橙了。

 

C - Splitting Pile

题意:把序列分成左右两部分,使得两边和之差最小。

#include<cstdio>
#include<algorithm>
#define MN 2100001
using namespace std;
 
int n,m,a[MN];
long long sum1=0,sum2=0,mmh=1e18;
long long _abs(long long x){return x<0?-x:x;}
int main(){
    scanf("%d",&n);
    for (int i=1;i<=n;i++) scanf("%d",&a[i]),sum2+=a[i];
    for (int i=1;i<n;i++) if (sum1+=a[i],_abs(sum2-sum1-sum1)<mmh) mmh=abs(sum2-sum1-sum1);
    printf("%d\n",mmh);
} 
View Code

相关文章:

  • 2022-02-07
  • 2021-06-24
  • 2021-05-19
  • 2022-01-02
  • 2021-12-03
  • 2021-10-16
  • 2021-06-17
  • 2021-10-01
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-12-23
  • 2022-02-07
  • 2021-09-17
相关资源
相似解决方案