1. 程式人生 > >Educational Codeforces Round 58 (Rated for Div. 2) E. Polycarp's New Job

Educational Codeforces Round 58 (Rated for Div. 2) E. Polycarp's New Job

題解

題目大意 +表示增加一個矩形 ?表示查詢 設錢包能無限疊加的裝正方形問當前大小的錢包是否能把所有矩形裝入

將所給xy調整為高<寬 記錄一個最大的高度 一個最大的寬度 查詢時比較高寬即可

AC程式碼

#include <stdio.h>
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;

const int INF = 0x3f3f3f3f;

int main()
{
#ifdef LOCAL
	//freopen("C:/input.txt", "r", stdin);
#endif int n; cin >> n; int h = 0, w = 0, x, y; char c; for (int i = 0; i < n; i++) { scanf(" %c%d%d", &c, &x, &y); if (x > y) swap(x, y); //將x改為較小的 if (c == '+') h = max(x, h), w = max(w, y); else cout << (x >= h && y >= w ? "YES" : "NO"
) << endl; } return 0; }