我理解的题意:
cin>>n>>k;
For(i,1,n) cin>>a[i];
For(i,1,n) cin>>b[i];
For(i,1,n) For(j,i+1+k,n)
{
if(a[i]<a[j] && b[i]>b[j]) ans++;
if(a[i]>a[j] && b[i]<b[j]) ans++;
}
实际的题意:
cin>>n>>k;
For(i,1,n) cin>>x, a[x]=i;
For(i,1,n) cin>>x, b[x]=i;
For(i,1,n) For(j,i+1+k,n)
{
if(a[i]<a[j] && b[i]>b[j]) ans++;
if(a[i]>a[j] && b[i]<b[j]) ans++;
}
其实只需要改一下读入。
19pts -> 100pts