132242025-01-07 09:29:20Leventusz09Bináris fa magassága (50 pont)cpp17Időlimit túllépés 20/50600ms604 KiB
#include <iostream>
#include <vector>
#include <map>

using namespace std;

map<int, int> etp;
//vector<int> etp;
int ls = 1;
int N, M;

int height(int vertex){
    int s;
    if(etp.count(vertex)) s = etp.at(vertex);
    else s = 1;
    if(vertex == 1) s = 0;
    if(vertex >= ls) return s;

    int e1 = height(vertex*2);
    int e2 = height(vertex*2+1);

    return s + max(e1, e2);
}

int main()
{
    cin >> N >> M;

    for(int i=1; i<N; i++) ls*= 2;

    int V, E;
    for(int _=0; _<M; _++){
        cin >> V >> E;
        etp[V] = E;
        cout << height(1) << endl;
    }

    //cout << height(1) << endl;

    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base20/50
1Elfogadva0/01ms512 KiB
2Időlimit túllépés0/0583ms316 KiB
3Elfogadva2/23ms316 KiB
4Elfogadva2/23ms316 KiB
5Elfogadva2/23ms316 KiB
6Elfogadva2/23ms316 KiB
7Elfogadva3/34ms316 KiB
8Elfogadva3/36ms316 KiB
9Elfogadva3/313ms316 KiB
10Elfogadva3/313ms412 KiB
11Időlimit túllépés0/2600ms316 KiB
12Időlimit túllépés0/2586ms604 KiB
13Időlimit túllépés0/2587ms404 KiB
14Időlimit túllépés0/2584ms316 KiB
15Időlimit túllépés0/2577ms508 KiB
16Időlimit túllépés0/2600ms420 KiB
17Időlimit túllépés0/2600ms400 KiB
18Időlimit túllépés0/2582ms316 KiB
19Időlimit túllépés0/2583ms316 KiB
20Időlimit túllépés0/3600ms408 KiB
21Időlimit túllépés0/3600ms404 KiB
22Időlimit túllépés0/3579ms316 KiB
23Időlimit túllépés0/3588ms316 KiB