二维数组题解
2024-12-14 20:41:12
发布于:上海
16阅读
0回复
0点赞
这道题直接开个二维数组,初始值全为false,每次输入参加这次游戏的人数之后就进行遍历,就比如说这一次游戏参加2人,为1号,3号那就把a[1][3]和a[3][1]设为true(具体索引有点乱),最后检测,如果还有false就输出No,否则输出Yes。
#include<bits/stdc++.h>
using namespace std;
int main()
{
int n,m,k;
cin>>n>>m;
bool a[n+1][n+1]={0};
int p[n]={0};
for(int i=0;i<m;i++)
{
cin>>k;
for(int j=0;j<k;j++)
{
cin>>p[j];
}
for(int j=0;j<k;j++)
{
for(int v=0;v<k;v++)
{
a[p[j]-1][p[v]-1]=true;
}
}
}
for(int i=0;i<n;i++)
{
for(int j=0;j<n;j++)
{
if(a[i][j]==false)
{
cout<<"No";
return 0;
}
}
}
cout<<"Yes";
return 0;
}
这里空空如也
有帮助,赞一个