| 比赛 |
26暑假集训模拟赛2 |
评测结果 |
AATTTTTTTT |
| 题目名称 |
and I am home |
最终得分 |
20 |
| 用户昵称 |
董彰奇 |
运行时间 |
16.815 s |
| 代码语言 |
C++ |
内存使用 |
3.47 MiB |
| 提交时间 |
2026-07-02 12:42:46 |
显示代码纯文本
#include"bits/stdc++.h"
using namespace std;
int n, mod = 998244353, dx[10] = { 0, 0, -1, 1 }, dy[10] = { -1, 1, 0, 0 };
long long ans = 0;
bool jl[110][110];
void dfs(int idx, int i, int j, int v)
{
if (idx == n)
{
ans = (ans + v) % mod;
return;
}
bool p = 0;
if (jl[i][j]) {
p = 1;
}
jl[i][j] = 1;
for (int k = 0; k < 4; k++)
{
int dxx = i + dx[k], dyy = j + dy[k], vv = v;
if (!jl[dxx][dyy])
{
vv++;
}
dfs(idx + 1, dxx, dyy, vv);
}
if(!p) jl[i][j] = 0;
}
int main()
{
freopen("home.in", "r", stdin);
freopen("home.out", "w", stdout);
cin >> n;
dfs(0,50, 50, 1);
cout << ans;
return 0;
}