
谁能帮我做下这C++题
5个跳水高兽将参加10米高台跳水决赛,有好事者让5人据实力预测比赛结果。A选手说:B第2,我第3;B选手说:我第2,E第4;C选手说:我第1,D第2;D选手说;C最后,我...
5个跳水高兽将参加10米高台跳水决赛,有好事者让5人据实力预测比赛结果。
A选手说:B第2,我第3;
B选手说:我第2,E第4;
C选手说:我第1,D第2;
D选手说;C最后,我第3;
E选手说;我第4 ,A第1;
还有个条件是每个人的话只说对了一半! 展开
A选手说:B第2,我第3;
B选手说:我第2,E第4;
C选手说:我第1,D第2;
D选手说;C最后,我第3;
E选手说;我第4 ,A第1;
还有个条件是每个人的话只说对了一半! 展开
展开全部
你这个题没出全吧?是不是每人只说对了一半?
如果是说话结果应该是3 1 5 2 4。
再说一句,“高兽”这个词很有新意!
#include<iostream.h>
void print(int a[], int n, int k)
{
int i,j;
if(k==n)
{
if((a[0]==3)^(a[1]==2)
&& (a[4]==4)^(a[1]==2)
&& (a[2]==1)^(a[3]==2)
&& (a[2]==5)^(a[3]==3)
&& (a[0]==1)^(a[4]==4))
for(i=1;i<=n;i++) cout<<a[i-1]<<" ";
return;
}
for(i=1;i<=n;i++)
{
for(j=0;j<k;j++) if(a[j]==i) break;
if(j!=k) continue;
a[k]=i;
print(a,n,k+1);
}
}
int main()
{
int a[5];
print(a,5,0);
return 0;
}
如果是说话结果应该是3 1 5 2 4。
再说一句,“高兽”这个词很有新意!
#include<iostream.h>
void print(int a[], int n, int k)
{
int i,j;
if(k==n)
{
if((a[0]==3)^(a[1]==2)
&& (a[4]==4)^(a[1]==2)
&& (a[2]==1)^(a[3]==2)
&& (a[2]==5)^(a[3]==3)
&& (a[0]==1)^(a[4]==4))
for(i=1;i<=n;i++) cout<<a[i-1]<<" ";
return;
}
for(i=1;i<=n;i++)
{
for(j=0;j<k;j++) if(a[j]==i) break;
if(j!=k) continue;
a[k]=i;
print(a,n,k+1);
}
}
int main()
{
int a[5];
print(a,5,0);
return 0;
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询