結果

問題 No.451 575
ユーザー butter_rollbutter_roll
提出日時 2016-12-12 00:53:43
言語 C++11
(gcc 13.3.0)
結果
WA  
(最新)
AC  
(最初)
実行時間 -
コード長 643 bytes
コンパイル時間 474 ms
コンパイル使用メモリ 60,040 KB
実行使用メモリ 6,824 KB
最終ジャッジ日時 2024-12-17 13:08:04
合計ジャッジ時間 4,393 ms
ジャッジサーバーID
(参考情報)
judge1 / judge4
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 4
other AC * 28 WA * 1
権限があれば一括ダウンロードができます

ソースコード

diff #

#include <cstdio>
#include <algorithm>
#include <iostream>
#include <vector>
#define ll long long int
using namespace std;

int main(void){

  ll n;
  ll a[111111],b[111111];
  ll l,r,l2;
  int i;
  cin>>n;
  for(i=1;i<=n;i++){
    cin>>b[i];
  }
  l=(ll)1;
  r=b[1]-1;

  for(i=1;i<=n;i++){
    if(i%2) {
      l2=max(b[i]-r,(ll)1);
      r=b[i]-l;
      l=l2;
    }
    else{
      l=max(l-b[i],(ll)1);
      r=r-b[i];
    }
  }

  if(l>r){
    cout<<"-1\n";
    return 0;
  }
  a[n+1]=l;
  for(i=n;i>=1;i--){
    a[i]=(i%2)?(b[i]-a[i+1]):(b[i]+a[i+1]);
  }
  cout<<n+1<<endl;

  for(i=1;i<=n+1;i++){
    cout<<a[i]<<endl;
  }

  return 0;
}
0