解いた問題

3/11/2012

SRM491 Div1 Easy

250
向かい合った数の合計を決める。その合計を実現できる数字の組みの数を数える。そこから3つ選ぶ。
数字の組み3つから2種類のサイコロが作れるらしい。

こんな感じで出るだろ。 =>> お?全部1/2だ。 =>> 2種類作れるのか?とりあえず2倍しとけ。
みないな推測。場合によってはとても危険な方法だけど。
class FoxMakingDice {
public:
  long long theCount(int N, int K)
  {
    lli ret = 0;

    for (int k = K; k < N * 2LL; ++k) {
      lli n = 0;
      for (int i = 1; i <= N; ++i) {
        int j = k - i;
        if (i < j) ; else continue;
        if (1 <= j && j <= N) ; else continue;
        ++n;
      }
      ret += n * (n - 1LL) * (n - 2LL) / 2LL / 3LL * 2LL;
    }
  
    return ret;
  }

0 件のコメント :

コメントを投稿