哪位大佬帮忙看下这个special judge哪里有问题orz求教。
判断一个数列h是否满足每一个i,都有hhi=i,并且和原来的数列至少有k个数相同。输入第一行是有多少个数,第二行是原数列,第三行是k。
Sample input:
10
10 3 6 5 4 7 8 9 2 1
7
Sample output:
10 3 2 5 4 7 6 9 8 1
我写的special judge:
#include"testlib.h"
int main(int argc, char* argv[])
{
int a[1005]={},b[1005]={},p=0;
registerTestlibCmd(argc, argv);
int n=inf.readInt();
for(int i=1;i<=n;i++)
{
a[i]=ans.readInt();
b[i]=inf.readInt();
if(a[i]==b[i])
{
p++;
}
}
int k=inf.readInt();
if(k<p)
quitf(_wa,"There isn't as much person as 'n'.");
for(int i=1;i<=n;i++)
{
if(a[a[i]]!=i)
quitf(_wa,"The %d and %d person are not satisfied.",i,a[i]);
if(a[i]==i)
quitf(_wa,"Not impossible for people to love themselves.");
}
quitf(_ok,"Tha people are satisfied.");
}