www.pudn.com > land.rar > land_hawking.cpp


//#include 
#include 
int m,n,c,i,j,rmin[700],rmax[700],min,max,k,up,down,marea,temp; 
unsigned short index[62000],d[700][700]; 
void input() 
{ 
	cin>>n>>m>>c; 
	//scanf("%d%d%d",&n,&m,&c); 
	for(i=0;i>d[i][j]; 
			//scanf("%d",&(d[i][j])); 
			d[i][j]+=30001; 
		} 
} 
void main() 
{ 
	input(); 
	for(int j1=0;j1rmax[i])rmax[i]=d[i][j2]; 
				if(d[i][j2]c) 
				{ 
					up=i+1; 
					continue; 
				} 
				if(rmax[i]-min>c) 
				{ 
					for(k=min;k=up&&index[k]<=down) 
							if(k==rmin[index[k]]) 
								up=index[k]+1; 
					min=60002; 
					for(k=rmax[i]-c;k=up&&index[k]<=down) 
							if(k==rmin[index[k]]) 
							{ 
								min=k; 
								break; 
							} 
 
				} 
				if(max-rmin[i]>c) 
				{ 
					for(k=max;k>rmin[i]+c&&k>=min;k--) 
						if(index[k]>=up&&index[k]<=down) 
							if(k==rmax[index[k]]) 
								up=index[k]+1; 
					max=0; 
					for(k=rmin[i]+c;k>rmin[i];k--) 
						if(index[k]>=up&&index[k]<=down) 
							if(k==rmax[index[k]]) 
							{ 
								max=k; 
								break; 
							} 
 
				} 
 
				if(rmax[i]>max)max=rmax[i]; 
				if(rmin[i]marea)marea=temp; 
			} 
		} 
	} 
//	printf("%d\n",marea); 
	cout<