結果
問題 |
No.2830 Don't Stop the Game
|
ユーザー |
|
提出日時 | 2024-08-02 23:21:30 |
言語 | C++17 (gcc 13.3.0 + boost 1.87.0) |
結果 |
WA
|
実行時間 | - |
コード長 | 873 bytes |
コンパイル時間 | 2,215 ms |
コンパイル使用メモリ | 203,764 KB |
最終ジャッジ日時 | 2025-02-23 20:29:50 |
ジャッジサーバーID (参考情報) |
judge2 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | WA * 20 |
コンパイルメッセージ
main.cpp: In function ‘int main()’: main.cpp:28:51: warning: narrowing conversion of ‘mpow(iv, (((long long int)m) - 2))’ from ‘ll’ {aka ‘long long int’} to ‘int’ [-Wnarrowing] 28 | X.emplace_back(t, vector<int>{mpow(iv, m - 2)}); | ~~~~^~~~~~~~~~~ main.cpp:28:51: warning: narrowing conversion of ‘mpow(iv, (((long long int)m) - 2))’ from ‘ll’ {aka ‘long long int’} to ‘int’ [-Wnarrowing] main.cpp:32:51: warning: narrowing conversion of ‘mpow(((ll)N), (((long long int)m) - 2))’ from ‘ll’ {aka ‘long long int’} to ‘int’ [-Wnarrowing] 32 | X.emplace_back(t, vector<int>{mpow(N, m - 2)}); | ~~~~^~~~~~~~~~ main.cpp:32:51: warning: narrowing conversion of ‘mpow(((ll)N), (((long long int)m) - 2))’ from ‘ll’ {aka ‘long long int’} to ‘int’ [-Wnarrowing]
ソースコード
#include <bits/stdc++.h> using namespace std; using ll = long long; ll const m = 998244353; ll mpow(ll a, ll n) { return (n ? (mpow((a * a) % m, n >> 1) * (n & 1 ? a : 1ll)) % m : 1ll); } int main () { int N = 30; std::vector<pair<int, vector<int>>> X; int t = 2; vector<int> P(N); for (int i = 0; i < N; i ++) { for (int j = 0; j < N; j ++) { P[j] = (i + j) % N + 1; } X.emplace_back(t, P); } t = 4; for (int i = 1; i <= N; i ++) { ll iv = 0; ll pw = 1; for (int j = 0; j < N; j ++) { iv += pw; iv %= m; pw = (pw * i) % m; } X.emplace_back(t, vector<int>{mpow(iv, m - 2)}); } t = 4; for (int i = 1; i <= N; i ++) { X.emplace_back(t, vector<int>{mpow(N, m - 2)}); } cout << X.size() << endl; for (auto& [t, v] : X) { cout << t << endl; for (auto& a : v) { cout << a << (a == v.back() ? "" : " "); } cout << endl; } }