150882025-02-12 18:03:09iSamu7598Bináris fa magassága (50 pont)cpp17Accepted 50/50125ms1328 KiB
#include <bits/stdc++.h>
#define speed cin.tie(0); ios::sync_with_stdio(0)
using namespace std;


vector<int> ossz;
vector<int> el;
int x;

/*int n, k;
int v[70000];
int KettoAzNediken;
void valtozas (int melyik, int valto){
v[melyik]=v[melyik]+valto;
if(2*melyik<KettoAzNediken){
    valtozas(2*melyik, valto);
    valtozas(2*melyik+1, valto);
}
}*/


int ujaraszamolas(int a){
if(2*a>=x){
        ossz[a]=0;
    return 0;
}
if(ossz[a]==-1){
ossz[a]=max(
            ujaraszamolas(2*a)+el[2*a],
            ujaraszamolas(2*a+1)+el[2*a+1]
            );
}

return ossz[a];
}

int main()
{



    int n, k;

    cin>>n>>k;
    x=(1<<n);

    el.assign(x+1, 1);
    ossz.assign(x+1, -1);
    el[0]=0;
    ossz[0]=0;
    int melyik, mennyi;
    for(int i=1; i<=x; i++){

    }
    while(k--){
        cin>>melyik>>mennyi;
el[melyik]=mennyi;

        for(int i=melyik; i>0; i=i/2){
            ossz[i]=-1;
        }

cout<<ujaraszamolas(1)<<endl;

    }



   /* cin>>n>>k;
KettoAzNediken=pow(2, n);
    v[1]=0;
    for(int i=2; i<=KettoAzNediken; i++){
        v[i]=v[i/2]+1;

    }
int melyik, mennyi;
for(int i=1; i<=k; i++){
    cin>>melyik>>mennyi;
    int valto=mennyi-(v[melyik]-v[melyik/2]);
    valtozas(melyik, valto);
    int maxi=0;
    for(int i=1; i<KettoAzNediken; i++){
    maxi=max(maxi, v[i]);
}
cout<<maxi<<endl;
}*/


    return 0;
}
SubtaskSumTestVerdictTimeMemory
base50/50
1Accepted0/01ms316 KiB
2Accepted0/0108ms1076 KiB
3Accepted2/23ms316 KiB
4Accepted2/23ms504 KiB
5Accepted2/23ms500 KiB
6Accepted2/23ms316 KiB
7Accepted3/33ms316 KiB
8Accepted3/33ms500 KiB
9Accepted3/33ms316 KiB
10Accepted3/33ms508 KiB
11Accepted2/2125ms1328 KiB
12Accepted2/2119ms1120 KiB
13Accepted2/2123ms1084 KiB
14Accepted2/2119ms1076 KiB
15Accepted2/2119ms1088 KiB
16Accepted2/2115ms1084 KiB
17Accepted2/2115ms1076 KiB
18Accepted2/2111ms1076 KiB
19Accepted2/2111ms1204 KiB
20Accepted3/3118ms1268 KiB
21Accepted3/3116ms1220 KiB
22Accepted3/3111ms1076 KiB
23Accepted3/3108ms1212 KiB