結果

問題 No.3357 eの部分和 mod 素数
コンテスト
ユーザー sai
提出日時 2025-11-14 21:51:09
言語 C++23
(gcc 13.3.0 + boost 1.87.0)
結果
MLE  
実行時間 -
コード長 523 bytes
コンパイル時間 2,852 ms
コンパイル使用メモリ 281,068 KB
実行使用メモリ 784,672 KB
最終ジャッジ日時 2025-11-14 21:51:48
合計ジャッジ時間 37,004 ms
ジャッジサーバーID
(参考情報)
judge3 / judge1
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
other AC * 8 MLE * 12
権限があれば一括ダウンロードができます

ソースコード

diff #

#include <bits/stdc++.h>
#include <atcoder/modint>
using mint = atcoder::modint;

int main() {
  std::ios::sync_with_stdio(false);
  std::cin.tie(nullptr);
  int p;
  std::cin >> p;
  mint::set_mod(p);
  std::vector<mint> Fac(p, 1), Finv(p, 1);
  for (int i = 1; i < p; i++) {
    Fac[i] = i * Fac[i - 1];
  }
  Finv.back() = Fac.back().inv();
  for (int i = p - 1; i--;) {
    Finv[i] = (i + 1) * Finv[i + 1];
  }
  mint ans = 0;
  for (int i = 0; i < p; i++) {
    ans += Finv[i];
  }
  std::cout << ans.val() << '\n';
}
0