problemscpp
A collection of my answers to algorithm problems in c++.
静态 Public 成员函数 | 所有成员列表
acwing::acwing1826::acwing1826类 参考

#include <acwing.h>

静态 Public 成员函数

static int main (istream &cin, ostream &cout)
 

详细描述

在文件 acwing.h835 行定义.

成员函数说明

◆ main()

int acwing::acwing1826::acwing1826::main ( istream &  cin,
ostream &  cout 
)
static

在文件 acwing.cpp2449 行定义.

2449 {
2450 unsigned int n;
2451 unsigned int x;
2452 unsigned int y;
2453 cin >> n;
2454 multiset<pair<unsigned int, unsigned int>, cmprow> row;
2455 multiset<pair<unsigned int, unsigned int>, cmpcol> col;
2456 for(unsigned int i = 0; i < n; i++) {
2457 cin >> x >> y;
2458 row.insert(pair(x, y));
2459 col.insert(pair(x, y));
2460 }
2461 unsigned int minimum = ((*row.rbegin()).first - (*row.begin()).first) * ((*col.rbegin()).second - (*col.begin()).second);
2462
2463 auto row_cpy = multiset(row);
2464 auto col_cpy = multiset(col);
2465 auto r_pair = *row_cpy.begin();
2466 row_cpy.erase(row_cpy.find(r_pair));
2467 col_cpy.erase(col_cpy.find(r_pair));
2468 minimum = min(minimum, ((*row_cpy.rbegin()).first - (*row_cpy.begin()).first) * ((*col_cpy.rbegin()).second - (*col_cpy.begin()).second));
2469
2470 row_cpy = multiset(row);
2471 col_cpy = multiset(col);
2472 r_pair = *row_cpy.rbegin();
2473 row_cpy.erase(row_cpy.find(r_pair));
2474 col_cpy.erase(col_cpy.find(r_pair));
2475 minimum = min(minimum, ((*row_cpy.rbegin()).first - (*row_cpy.begin()).first) * ((*col_cpy.rbegin()).second - (*col_cpy.begin()).second));
2476
2477 row_cpy = multiset(row);
2478 col_cpy = multiset(col);
2479 auto c_pair = *col_cpy.begin();
2480 row_cpy.erase(row_cpy.find(c_pair));
2481 col_cpy.erase(col_cpy.find(c_pair));
2482 minimum = min(minimum, ((*row_cpy.rbegin()).first - (*row_cpy.begin()).first) * ((*col_cpy.rbegin()).second - (*col_cpy.begin()).second));
2483
2484 row_cpy = multiset(row);
2485 col_cpy = multiset(col);
2486 c_pair = *col_cpy.rbegin();
2487 row_cpy.erase(row_cpy.find(c_pair));
2488 col_cpy.erase(col_cpy.find(c_pair));
2489 minimum = min(minimum, ((*row_cpy.rbegin()).first - (*row_cpy.begin()).first) * ((*col_cpy.rbegin()).second - (*col_cpy.begin()).second));
2490
2491 cout << minimum;
2492 return 0;
2493 }

该类的文档由以下文件生成: