针对40分代码
#include<iostream>
#include<string.h>
using namespace std;
struct dl{
int x;
int y;
}a[501];
int big=-1,used[501],ans=-1;
int n,k;
int cz(int xx,int yy){
for(int i=1;i<=n;i++){
if(a[i].x==xx&&a[i].y==yy){
return i;
}
}
return -1;
}
int go(int i,int l){
if(used[i]==1){
return 0;
}used[i]=1;
if(l>big){
big=l;
}
int wssb=cz(a[i].x+1,a[i].y);
if(wssb!=0){
go(wssb,l+1);
}
wssb=cz(a[i].x,a[i].y+1);
if(wssb!=0){
go(wssb,l+1);
}
}
int main(){
cin>>n>>k;
for(int i=1;i<=n;i++){
cin>>a[i].x>>a[i].y;
}
if(k==0){
for(int i=1;i<=n;i++){
memset(used,0,sizeof(used));
big=0;
go(i,1);
ans=max(ans,big);
}
}
cout<<ans;
return 0;
}
不是怎么提交上去re一片