提出 #9846524
ソースコード 拡げる
#include "bits/stdc++.h"
#include<assert.h>
using namespace std;
#define rep(i,n) for(int i=0;i<n;i++)
#define int long long
#define MRE assert(0);
const int inf = 1e11;
const int mod = 998244353;
const int maxN = 10000003;
typedef pair<int, int> P;
typedef pair<int, P> PP;
int kj[maxN], kji[maxN];
int rwa[maxN];
int modpow(int a, int x, int mod) {
int res = 1;
while (x) {
if (x & 1)res = res*a%mod;
x >>= 1;
a = a*a%mod;
}
return res;
}
void setkj(int n) {
kj[0] = 1;
rep(i, n)kj[i + 1] = kj[i] * (i + 1) % mod;
rep(i, n + 1)kji[i] = modpow(kj[i], mod - 2, mod);
}
int comb(int r,int c) {
if (c<0 || r<c)return 0;
return kj[r] * kji[c] % mod*kji[r - c] % mod;
}
void expr(int n) {
int sum = 0;
rep(a1, n + 1) {
rep(b1, n + 1) {
rep(a2, n + 1) {
rep(b2, n + 1) {
if (a1 + b1 <= n&&a2 + b2 <= n&&a1 + b2 <= n&&a2 + b1 <= n) {
int c1 = n - a1 - b1, c2 = n - a2 - b2;
sum += kj[n] * kj[n] % mod*kji[a1] % mod*kji[a2] % mod*kji[b1] % mod*kji[b2] % mod*kji[c1] % mod*kji[c2] % mod;
cout << a1 << b1 << a2 << b2 << endl;
}
}
}
}
}
cout << sum << endl;
}
signed main() {
int n; cin >> n;
setkj(n);
n /= 2;
int sum = 0;
for (int j = 1; j <= n; j++)rwa[j] = comb(n, j)*modpow(2, mod - 1 - j, mod) % mod;
for (int j = 0; j <= n; j++)rwa[j + 1] += rwa[j];
for (int i = 1; i <= n; i++) {
int lj = n + 1 - i, rj = n;
int res1 = rwa[rj] - rwa[lj - 1] + mod;
res1 %= mod;
sum += comb(n, i)*modpow(2, n + n - i, mod) % mod*res1%mod;
sum %= mod;
}
/*
rep(i, n + 1) {
rep(j, n + 1) {
if (i + j > n) {
sum += comb(n, i)*comb(n, j) % mod*modpow(2, n*2 - i-j, mod);
}
}
}*/
sum = modpow(3, 2 * n, mod) - sum * 2 % mod;
sum = (sum + mod) % mod;
cout << sum << endl;
}
提出情報
| 提出日時 |
|
| 問題 |
C - Neither AB nor BA |
| ユーザ |
Rho17 |
| 言語 |
C++14 (GCC 5.4.1) |
| 得点 |
800 |
| コード長 |
1827 Byte |
| 結果 |
AC |
| 実行時間 |
3072 ms |
| メモリ |
197760 KiB |
ジャッジ結果
| セット名 |
Sample |
All |
| 得点 / 配点 |
0 / 0 |
800 / 800 |
| 結果 |
|
|
| セット名 |
テストケース |
| Sample |
00-sample-01.txt, 00-sample-02.txt, 00-sample-03.txt |
| All |
00-sample-01.txt, 00-sample-02.txt, 00-sample-03.txt, 01-01.txt, 01-02.txt, 01-03.txt, 01-04.txt, 01-05.txt, 01-06.txt, 01-07.txt, 01-08.txt, 01-09.txt, 01-10.txt, 01-11.txt |
| ケース名 |
結果 |
実行時間 |
メモリ |
| 00-sample-01.txt |
AC |
2 ms |
4352 KiB |
| 00-sample-02.txt |
AC |
2 ms |
4352 KiB |
| 00-sample-03.txt |
AC |
300 ms |
22784 KiB |
| 01-01.txt |
AC |
470 ms |
35072 KiB |
| 01-02.txt |
AC |
378 ms |
28928 KiB |
| 01-03.txt |
AC |
322 ms |
26880 KiB |
| 01-04.txt |
AC |
570 ms |
41216 KiB |
| 01-05.txt |
AC |
1739 ms |
114944 KiB |
| 01-06.txt |
AC |
3072 ms |
197760 KiB |
| 01-07.txt |
AC |
3069 ms |
197760 KiB |
| 01-08.txt |
AC |
3069 ms |
197632 KiB |
| 01-09.txt |
AC |
3072 ms |
197760 KiB |
| 01-10.txt |
AC |
3068 ms |
197632 KiB |
| 01-11.txt |
AC |
3070 ms |
197760 KiB |