149852025-02-10 19:34:20iSamu7598Bináris fa magassága (50 pont)cpp17Időlimit túllépés 20/50600ms680 KiB
#include <iostream>
#include <cmath>
using namespace std;
int n, k;
int v[70000];

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

int main()
{
    cin>>n>>k;

    v[1]=0;
    for(int i=2; i<=pow(2, n); 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<pow(2, n); i++){
    maxi=max(maxi, v[i]);
}
cout<<maxi<<endl;
}


    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base20/50
1Elfogadva0/01ms316 KiB
2Időlimit túllépés0/0584ms576 KiB
3Elfogadva2/23ms316 KiB
4Elfogadva2/23ms316 KiB
5Elfogadva2/23ms316 KiB
6Elfogadva2/23ms316 KiB
7Elfogadva3/34ms316 KiB
8Elfogadva3/37ms412 KiB
9Elfogadva3/312ms316 KiB
10Elfogadva3/312ms316 KiB
11Időlimit túllépés0/2598ms564 KiB
12Időlimit túllépés0/2600ms680 KiB
13Időlimit túllépés0/2598ms564 KiB
14Időlimit túllépés0/2583ms564 KiB
15Időlimit túllépés0/2577ms680 KiB
16Időlimit túllépés0/2600ms564 KiB
17Időlimit túllépés0/2600ms680 KiB
18Időlimit túllépés0/2582ms564 KiB
19Időlimit túllépés0/2582ms564 KiB
20Időlimit túllépés0/3600ms564 KiB
21Időlimit túllépés0/3600ms564 KiB
22Időlimit túllépés0/3579ms564 KiB
23Időlimit túllépés0/3583ms564 KiB