結果

問題 No.3790 Unlabeled Slime Trees
コンテスト
ユーザー DeltaStruct
提出日時 2026-09-22 12:33:00
言語 C++23(gnu拡張)
(gcc 15.3.0 + boost 1.92.0 + ACL)
コンパイル:
g++-15 -O2 -fplugin=/usr/lib/yukicoder/noavx512-gcc15.so -lm -std=gnu++23 -Wuninitialized -DONLINE_JUDGE -o a.out _filename_
実行:
./a.out
結果
AC  
実行時間 981 ms / 2,000 ms
+ 266µs
コード長 447 bytes
記録
記録タグの例:
初AC ショートコード 純ショートコード 純主流ショートコード 最速実行時間
コンパイル時間 2,709 ms
コンパイル使用メモリ 341,772 KB
実行使用メモリ 7,852 KB
最終ジャッジ日時 2026-11-06 20:58:27
合計ジャッジ時間 6,926 ms
ジャッジサーバーID
(参考情報)
judge3_0 / judge2_0
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 1
other AC * 1
権限があれば一括ダウンロードができます

ソースコード

diff #
raw source code

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

int main(){
  ios::sync_with_stdio(false),cin.tie(0);
  vector<mint> dp(1e6+1);
  for (int i(3);i <= 1e6;++i){
    mint t = mint(2).pow(i-1);
    dp[i] = dp[i-1]*t*(t/2);
    dp[i] -= (t/4-1)*(t/2)*(t/2);
    dp[i] += (t/2+1)*(t/2)/2-1;
  }
  int q; cin >> q;
  while(q--){
  	int n; cin >> n;
  	cout << (dp[n]+1).val() << '\n';
  }
}
0