Submission #1365038

#TimeUsernameProblemLanguageResultExecution timeMemory
1365038hyyhLightning Rod (NOI18_lightningrod)C++20
100 / 100
920 ms79756 KiB
#include <iostream>
#include <math.h>
#include <vector>
#include <string>
#include <algorithm>
#include <queue>
#include <stack>
#include <map>
#include <cstring>
#include <iomanip>
#include <set>
#include <bitset>
#include <unordered_map>

using namespace std;
using ll = long long;
using pii = pair<int,int>;
using piii = tuple<int,int,int>;
#define f first
#define s second
#define endl '\n'
#define all(x) begin(x),end(x)
#define m_p make_pair

int main(){
    ios_base::sync_with_stdio(0);cin.tie(0);
    int n;cin >> n;
    stack<pii> st;
    for(int i{};i < n;i++){
        int x,y;cin >> x >> y;
        while(!st.empty() && x-st.top().f <= y-st.top().s) st.pop();
        if(!(!st.empty() && x-st.top().f <= st.top().s-y)) st.emplace(x,y);
    }
    cout << st.size();
}
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...