向かい合った数の合計を決める。その合計を実現できる数字の組みの数を数える。そこから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 件のコメント :
コメントを投稿