Submission #472877

# Submission time Handle Problem Language Result Execution time Memory
472877 2021-09-14T12:34:50 Z MamdouhN Deda (COCI17_deda) C++14
60 / 140
1000 ms 7424 KB
#include<bits/stdc++.h>
using namespace std;
#define int long long
#define endl "\n"

int ar [200005],seg[800005];
int uwu = 92716301829;
void update(int idx,int st,int en,int i,int value)
{
    if(en<i||st>i)return;
    if(st==en)
    {
        seg[idx] = ar[i] = value;
        return;
    }
    int mid = (st+en)/2;
    update(idx*2,st,mid,i,value);
    update(idx*2+1,mid+1,en,i,value);
    seg[idx]=min(seg[idx*2],seg[idx*2+1]);
}

int query(int idx,int st,int en,int qs,int qe,int y)
{
    if(en<qs||st>qe)return uwu;
    if(seg[idx]>y)return uwu;
    if(st==en)return (seg[idx]==-1?uwu:st);
    int mid = (st+en)/2;
    int left  = query(idx*2,st,mid,qs,qe,y);
    int right = query(idx*2+1,mid+1,en,qs,qe,y);
    return min(left,right);
}

main()
{
    memset(seg,-1,sizeof seg);
    int n,q;
    cin>>n>>q;
    while(q--)
    {
        char c;
        int a,b;
        cin>>c>>a>>b;
        if(c=='M')
        {
            update(1,0,n,b,a);
        }
        else
        {
            int ans = query(1,0,n,b,n,a);
            cout<<(ans==uwu ? -1:ans)<<endl;
        }
    }
}

Compilation message

deda.cpp:33:1: warning: ISO C++ forbids declaration of 'main' with no type [-Wreturn-type]
   33 | main()
      | ^~~~
# Verdict Execution time Memory Grader output
1 Correct 3 ms 6476 KB Output is correct
2 Correct 4 ms 6476 KB Output is correct
3 Correct 32 ms 6576 KB Output is correct
4 Execution timed out 1073 ms 6548 KB Time limit exceeded
5 Execution timed out 1087 ms 7320 KB Time limit exceeded
6 Execution timed out 1085 ms 7424 KB Time limit exceeded
7 Execution timed out 1051 ms 7416 KB Time limit exceeded