Submission #65509553
Source Code Expand
#include<cstdio>
#include<cstdlib>
#include<cstring>
#include<iostream>
#include<algorithm>
#include<cmath>
#include<vector>
using namespace std;
const int N=400,mod=998244353;
int n,a[N][N],ans,c[N];
bool vis[N];
void solve(int x)
{
int y,i,j,cnt;
y=0;
for (i=1;i<n;i++)
{
if (!a[x][i]||vis[i]) continue;
c[i]=0;
for (j=1;j<n;j++) if (!a[x][j])
{
if (a[i][j]) ans=0;
}
else
{
if (vis[j]) continue;
if (a[i][j]) c[i]++;
}
if (c[i]>c[y]) y=i;
}
if (!y) return;
cnt=0;
for (i=1;i<n;i++)
{
if (!a[x][i]||vis[i]||c[i]<c[y]) continue;
for (j=1;j<n;j++)
{
if (!a[x][j]||vis[j]) continue;
if (a[y][j]!=a[i][j]) break;
}
if (j<n)
{
if (a[y][i]) ans=0;
}
else
{
vis[i]=1;
ans=(long long)ans*++cnt%mod;
}
}
solve(y);
solve(x);
}
int main()
{
int T,i,j;
for (scanf("%d",&T);T;T--)
{
scanf("%d",&n);
for (i=0;i<n;i++) for (j=0;j<n;j++) scanf("%d",&a[i][j]);
for (i=0;i<n;i++) if (!a[0][i]) break;
if (i<n) printf("0\n");
else
{
for (i=1;i<n;i++) vis[i]=0;
ans=1;
solve(0);
printf("%d\n",ans);
}
}
return 0;
}
Submission Info
| Submission Time | |
|---|---|
| Task | D - Ancestor Relation |
| User | STUDENT00 |
| Language | C++ 20 (gcc 12.2) |
| Score | 700 |
| Code Size | 1173 Byte |
| Status | AC |
| Exec Time | 50 ms |
| Memory | 4488 KiB |
Compile Error
Main.cpp: In function ‘int main()’:
Main.cpp:57:19: warning: ignoring return value of ‘int scanf(const char*, ...)’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
57 | for (scanf("%d",&T);T;T--)
| ~~~~~^~~~~~~~~
Main.cpp:59:22: warning: ignoring return value of ‘int scanf(const char*, ...)’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
59 | scanf("%d",&n);
| ~~~~~^~~~~~~~~
Main.cpp:60:58: warning: ignoring return value of ‘int scanf(const char*, ...)’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
60 | for (i=0;i<n;i++) for (j=0;j<n;j++) scanf("%d",&a[i][j]);
| ~~~~~^~~~~~~~~~~~~~~
Judge Result
| Set Name | Sample | All | ||||
|---|---|---|---|---|---|---|
| Score / Max Score | 0 / 0 | 700 / 700 | ||||
| Status |
|
|
| Set Name | Test Cases |
|---|---|
| Sample | 01_sample_01.txt |
| All | 01_sample_01.txt, 02_small_01.txt, 02_small_02.txt, 02_small_03.txt, 03_mid_1_01.txt, 03_mid_1_02.txt, 03_mid_1_03.txt, 03_mid_1_04.txt, 03_mid_1_05.txt, 03_mid_1_06.txt, 03_mid_1_07.txt, 03_mid_1_08.txt, 03_mid_1_09.txt, 03_mid_1_10.txt, 03_mid_1_11.txt, 03_mid_1_12.txt, 03_mid_1_13.txt, 03_mid_1_14.txt, 03_mid_1_15.txt, 04_mid_2_01.txt, 04_mid_2_02.txt, 04_mid_2_03.txt, 04_mid_2_04.txt, 04_mid_2_05.txt, 04_mid_2_06.txt, 04_mid_2_07.txt, 04_mid_2_08.txt, 04_mid_2_09.txt, 04_mid_2_10.txt, 04_mid_2_11.txt, 04_mid_2_12.txt, 04_mid_2_13.txt, 04_mid_2_14.txt, 04_mid_2_15.txt, 05_mid_3_01.txt, 05_mid_3_02.txt, 05_mid_3_03.txt, 05_mid_3_04.txt, 05_mid_3_05.txt, 06_mid_4_01.txt, 06_mid_4_02.txt, 06_mid_4_03.txt, 06_mid_4_04.txt, 06_mid_4_05.txt, 07_mid_5_01.txt, 07_mid_5_02.txt, 07_mid_5_03.txt, 07_mid_5_04.txt, 07_mid_5_05.txt, 08_max_1_01.txt, 08_max_1_02.txt, 08_max_1_03.txt, 08_max_1_04.txt, 08_max_1_05.txt, 08_max_1_06.txt, 08_max_1_07.txt, 08_max_1_08.txt, 08_max_1_09.txt, 08_max_1_10.txt, 08_max_1_11.txt, 08_max_1_12.txt, 08_max_1_13.txt, 08_max_1_14.txt, 08_max_1_15.txt, 09_max_2_01.txt, 09_max_2_02.txt, 09_max_2_03.txt, 09_max_2_04.txt, 09_max_2_05.txt, 09_max_2_06.txt, 09_max_2_07.txt, 09_max_2_08.txt, 09_max_2_09.txt, 09_max_2_10.txt, 09_max_2_11.txt, 09_max_2_12.txt, 09_max_2_13.txt, 09_max_2_14.txt, 09_max_2_15.txt, 10_max_3_01.txt, 10_max_3_02.txt, 10_max_3_03.txt, 10_max_3_04.txt, 10_max_3_05.txt, 11_max_4_01.txt, 11_max_4_02.txt, 11_max_4_03.txt, 11_max_4_04.txt, 11_max_4_05.txt, 12_max_5_01.txt, 12_max_5_02.txt, 12_max_5_03.txt, 12_max_5_04.txt, 12_max_5_05.txt |
| Case Name | Status | Exec Time | Memory |
|---|---|---|---|
| 01_sample_01.txt | AC | 1 ms | 3748 KiB |
| 02_small_01.txt | AC | 8 ms | 3640 KiB |
| 02_small_02.txt | AC | 8 ms | 3668 KiB |
| 02_small_03.txt | AC | 8 ms | 3632 KiB |
| 03_mid_1_01.txt | AC | 13 ms | 3872 KiB |
| 03_mid_1_02.txt | AC | 13 ms | 3808 KiB |
| 03_mid_1_03.txt | AC | 13 ms | 3644 KiB |
| 03_mid_1_04.txt | AC | 13 ms | 3808 KiB |
| 03_mid_1_05.txt | AC | 13 ms | 3704 KiB |
| 03_mid_1_06.txt | AC | 13 ms | 3752 KiB |
| 03_mid_1_07.txt | AC | 13 ms | 3644 KiB |
| 03_mid_1_08.txt | AC | 13 ms | 3644 KiB |
| 03_mid_1_09.txt | AC | 13 ms | 3812 KiB |
| 03_mid_1_10.txt | AC | 13 ms | 3704 KiB |
| 03_mid_1_11.txt | AC | 13 ms | 3740 KiB |
| 03_mid_1_12.txt | AC | 13 ms | 3876 KiB |
| 03_mid_1_13.txt | AC | 13 ms | 3748 KiB |
| 03_mid_1_14.txt | AC | 12 ms | 3752 KiB |
| 03_mid_1_15.txt | AC | 13 ms | 3680 KiB |
| 04_mid_2_01.txt | AC | 12 ms | 3696 KiB |
| 04_mid_2_02.txt | AC | 12 ms | 3880 KiB |
| 04_mid_2_03.txt | AC | 13 ms | 3712 KiB |
| 04_mid_2_04.txt | AC | 13 ms | 3720 KiB |
| 04_mid_2_05.txt | AC | 13 ms | 3936 KiB |
| 04_mid_2_06.txt | AC | 12 ms | 3708 KiB |
| 04_mid_2_07.txt | AC | 12 ms | 3832 KiB |
| 04_mid_2_08.txt | AC | 13 ms | 3932 KiB |
| 04_mid_2_09.txt | AC | 12 ms | 3832 KiB |
| 04_mid_2_10.txt | AC | 13 ms | 3744 KiB |
| 04_mid_2_11.txt | AC | 12 ms | 3812 KiB |
| 04_mid_2_12.txt | AC | 13 ms | 3880 KiB |
| 04_mid_2_13.txt | AC | 12 ms | 3944 KiB |
| 04_mid_2_14.txt | AC | 12 ms | 3804 KiB |
| 04_mid_2_15.txt | AC | 13 ms | 3696 KiB |
| 05_mid_3_01.txt | AC | 9 ms | 3828 KiB |
| 05_mid_3_02.txt | AC | 9 ms | 3752 KiB |
| 05_mid_3_03.txt | AC | 9 ms | 3744 KiB |
| 05_mid_3_04.txt | AC | 9 ms | 3576 KiB |
| 05_mid_3_05.txt | AC | 9 ms | 3936 KiB |
| 06_mid_4_01.txt | AC | 11 ms | 3660 KiB |
| 06_mid_4_02.txt | AC | 11 ms | 3816 KiB |
| 06_mid_4_03.txt | AC | 11 ms | 3752 KiB |
| 06_mid_4_04.txt | AC | 11 ms | 3696 KiB |
| 06_mid_4_05.txt | AC | 11 ms | 3808 KiB |
| 07_mid_5_01.txt | AC | 10 ms | 3872 KiB |
| 07_mid_5_02.txt | AC | 10 ms | 3716 KiB |
| 07_mid_5_03.txt | AC | 10 ms | 3708 KiB |
| 07_mid_5_04.txt | AC | 10 ms | 3644 KiB |
| 07_mid_5_05.txt | AC | 10 ms | 3816 KiB |
| 08_max_1_01.txt | AC | 10 ms | 4280 KiB |
| 08_max_1_02.txt | AC | 19 ms | 4288 KiB |
| 08_max_1_03.txt | AC | 19 ms | 4288 KiB |
| 08_max_1_04.txt | AC | 10 ms | 4264 KiB |
| 08_max_1_05.txt | AC | 18 ms | 4264 KiB |
| 08_max_1_06.txt | AC | 21 ms | 4476 KiB |
| 08_max_1_07.txt | AC | 10 ms | 4284 KiB |
| 08_max_1_08.txt | AC | 8 ms | 4420 KiB |
| 08_max_1_09.txt | AC | 33 ms | 4192 KiB |
| 08_max_1_10.txt | AC | 10 ms | 4416 KiB |
| 08_max_1_11.txt | AC | 20 ms | 4356 KiB |
| 08_max_1_12.txt | AC | 24 ms | 4352 KiB |
| 08_max_1_13.txt | AC | 11 ms | 4488 KiB |
| 08_max_1_14.txt | AC | 20 ms | 4268 KiB |
| 08_max_1_15.txt | AC | 33 ms | 4280 KiB |
| 09_max_2_01.txt | AC | 10 ms | 4376 KiB |
| 09_max_2_02.txt | AC | 19 ms | 4480 KiB |
| 09_max_2_03.txt | AC | 19 ms | 4488 KiB |
| 09_max_2_04.txt | AC | 10 ms | 4352 KiB |
| 09_max_2_05.txt | AC | 17 ms | 4264 KiB |
| 09_max_2_06.txt | AC | 33 ms | 4352 KiB |
| 09_max_2_07.txt | AC | 10 ms | 4420 KiB |
| 09_max_2_08.txt | AC | 19 ms | 4240 KiB |
| 09_max_2_09.txt | AC | 18 ms | 4296 KiB |
| 09_max_2_10.txt | AC | 10 ms | 4360 KiB |
| 09_max_2_11.txt | AC | 16 ms | 4292 KiB |
| 09_max_2_12.txt | AC | 34 ms | 4264 KiB |
| 09_max_2_13.txt | AC | 10 ms | 4488 KiB |
| 09_max_2_14.txt | AC | 19 ms | 4360 KiB |
| 09_max_2_15.txt | AC | 50 ms | 4420 KiB |
| 10_max_3_01.txt | AC | 9 ms | 4224 KiB |
| 10_max_3_02.txt | AC | 8 ms | 4304 KiB |
| 10_max_3_03.txt | AC | 9 ms | 4480 KiB |
| 10_max_3_04.txt | AC | 8 ms | 4316 KiB |
| 10_max_3_05.txt | AC | 8 ms | 4372 KiB |
| 11_max_4_01.txt | AC | 21 ms | 4272 KiB |
| 11_max_4_02.txt | AC | 22 ms | 4252 KiB |
| 11_max_4_03.txt | AC | 21 ms | 4248 KiB |
| 11_max_4_04.txt | AC | 20 ms | 4248 KiB |
| 11_max_4_05.txt | AC | 21 ms | 4308 KiB |
| 12_max_5_01.txt | AC | 9 ms | 4248 KiB |
| 12_max_5_02.txt | AC | 9 ms | 4240 KiB |
| 12_max_5_03.txt | AC | 9 ms | 4420 KiB |
| 12_max_5_04.txt | AC | 9 ms | 4420 KiB |
| 12_max_5_05.txt | AC | 10 ms | 4192 KiB |