最小包围矩形
程序员文章站
2024-03-16 18:20:16
...
题目内容:
给定一组二维坐标,表示直角坐标系内的一个多边形的连续的顶点的坐标序列。计算能包围这个多边形的平行于坐标轴的最小矩形,输出它的左下角和右上角的坐标。
输入格式:
第一行是一个正整数n表示顶点的数量,第二行是n组整数,依次表示每个顶点坐标的x和y值。
输出格式:
四个整数,依次表示所计算的矩形的左下角的坐标的x、y值和右上角坐标的x、y值。输出最后带有回车换行。
输入样例:
5
1 1 1 4 3 7 4 4 4 1
输出样例:
1 1 4 7
#include<stdio.h>
int main()
{
int n;
int x[100],y[100];
scanf("%d",&n);
for( int i=0; i<n; i++ )
scanf("%d%d",&x[i],&y[i]);
int xmin,xmax;
xmin = xmax = x[0];
for( int i=1; i<n; i++ ){
if( x[i] < xmin ){
xmin = x[i];
}
if( x[i] > xmax ){
xmax = x[i];
}
}
int ymin,ymax;
ymin = ymax = y[0];
for( int i=1; i<n; i++ ){
if( y[i] < ymin ){
ymin = y[i];
}
if( y[i] > ymax ){
ymax = y[i];
}
}
printf("%d %d %d %d\n",xmin,ymin,xmax,ymax);
return 0;
}
上一篇: 凯撒密码加密