最小长方形
来源:互联网 发布:360软件修补漏洞 编辑:程序博客网 时间:2024/06/10 14:49
//给定一系列2维平面点的坐标(x, y),其中x和y均为整数,//要求用一个最小的长方形框将所有点框在内。//长方形框的边分别平行于x和y坐标轴,点落在边上也算是被框在内。//对每个测试用例,在1行内输出2对整数,其间用一个空格隔开。//第1对整数是长方形框左下角的坐标,第2对整数是长方形框右上角的坐标。//如果只是一个点或者一条线,不输出。例如://12 34//0 0//只是一个点,不是长方形,不输出。//样例输入://12 56//23 56//13 10//0 0//12 34//0 0//0 0//样例输出://12 10 23 56#include <iostream>#include <vector>#include <algorithm>using namespace std;int main(){vector<int>v1, v2;//分别存放x值和y值bool stopAllTest = false;//标志整个输入的结束while (stopAllTest == false){bool isFirst = true;int x, y; //表示一个test里面的第一个数据while (cin >> x >> y){if (isFirst){if (x == 0 && y == 0)//test里面的第一个数据为0 0,则结束{stopAllTest = true; //整个输入结束break;}else{v1.push_back(x);v2.push_back(y);isFirst = false;}}else//isFirst==false{if (x == 0 && y == 0)//当前这个test遇到0,0,结束当前的test{break;}else{v1.push_back(x);v2.push_back(y);}};}//第二个while结束if (v1.size() >= 2)//大于=2排除了是一个点{//取出最小的x y和最大的x y输出即可sort(v1.begin(), v1.end());sort(v2.begin(), v2.end());int n = v1.size();//v1和v2大小一样//最小最大x不等,最小最大y不等,排除了是直线if (v1[0] != v1[n - 1] && v2[0] != v2[n - 1])cout << v1[0] << " " << v2[0] << " " << v1[n - 1] << " " << v2[n - 1] << endl;}v1.clear();v2.clear();}//第一个while结束return 0;}
0 0
- 最小长方形
- 最小长方形
- 最小长方形
- 最小长方形
- 最小长方形
- 最小长方形
- 最小长方形
- 最小长方形
- 最小长方形
- hdu 1869最小长方形
- 最小长方形问题
- zju2007最小长方形
- HDU1859:最小长方形
- 题目1020:最小长方形
- hdu 1859 最小长方形
- 题目1020:最小长方形
- HDU 1859 最小长方形
- 题目1020:最小长方形
- android 死机log分析
- test
- c++参数传递
- 丁耘:开发者是打通最后一公里的决定性力量
- (Advanced Receiver Autonomous Integrity Monitoring 高级接收机自主完好性监测——词汇
- 最小长方形
- easyui DataGrid editors扩展之combogrid ,combogrid 下拉选择后填充 editor 列内容方法
- 汉诺塔
- Notification的简单使用
- xp系统Java 7环境变量配置及eclipse使用
- 用程序来控制一个网页,实现自动输入等操作
- @Override标签
- Python学习笔记___初识Python
- 小游戏------锅打灰太狼