読者です 読者をやめる 読者になる 読者になる

水面下の夢

競プロやイラストに興味があります.メインブログがここ.ソシャゲの話はこっち(http://ameblo.jp/0n0-yumechi/).ブログアイコンはYaQ(@8_9_00)さんから.

No.40 多項式の割り算

回答

#60165 No.40 多項式の割り算 - yukicoder


x^3-xで割り算した結果はどうなるか,という問題.
x^3で割れる範囲で割っていく.割れなくなったら出力.

という,割りとやるだけの問題であったのにもかかわらず,なかなかAC出来ず.
理由としては,配列外アクセスを実はやらかしていて,WAが出ていたというオチ.
C++の場合,てっきりREなるかとおもいきや,WAになるんだとか.
こういう仕様を初めて知りました(´・ω・`)

配列外アクセスとかありえないようなミスなので,気をつけよう….

int main() {
  cin.tie(0);
  ios::sync_with_stdio(false);
  cout.precision(16);

  int d;
  cin >> d;

  int array[d + 1];
  REP(i, d + 1) cin >> array[i];

  RFOR(i, 3, d + 1) {
    if (array[i] != 0) {
      array[i - 2] += array[i];
      array[i] = 0;
    }
  }

  int digit = 0;
  RFOR(i, 0, 3) {
    if (d < i)
      break;
    if (array[i] != 0) {
      digit = i;
      break;
    }
  }

  cout << digit << endl;
  if (digit == 2) {
    cout << array[0] << " " << array[1] << " " << array[2] << endl;
  } else if (digit == 1) {
    cout << array[0] << " " << array[1] << endl;
  } else {
    cout << array[0] << endl;
  }

  return 0;
}