128552025-01-02 16:00:54ercseferencBináris fa magassága (50 pont)cpp17Accepted 50/50115ms1204 KiB
#include <iostream>
#include <cmath>
using namespace std;
int a[100000],b[100000];
int main()
{
    int n,m,x,y;  cin>>n>>m;
    for(int i=1; i<=n; i++){
        for(int j=pow(2,i-1); j<pow(2,i); j++){
            a[j]=n-i; b[j]=1;}}
    for(int i=0; i<m; i++){
        cin>>x>>y; b[x]=y;
        while(x!=1){
            a[x/2]=max(a[(x/2*2)]+b[(x/2*2)], a[(x/2*2)+1]+b[(x/2*2)+1]); x=x/2;}
        cout<<a[1]<<endl;}
    return 0;
}
SubtaskSumTestVerdictTimeMemory
base50/50
1Accepted0/01ms320 KiB
2Accepted0/0104ms1204 KiB
3Accepted2/23ms508 KiB
4Accepted2/23ms508 KiB
5Accepted2/23ms320 KiB
6Accepted2/23ms320 KiB
7Accepted3/33ms508 KiB
8Accepted3/33ms320 KiB
9Accepted3/33ms320 KiB
10Accepted3/33ms320 KiB
11Accepted2/2115ms948 KiB
12Accepted2/2112ms1012 KiB
13Accepted2/2115ms1084 KiB
14Accepted2/2105ms1080 KiB
15Accepted2/2114ms1080 KiB
16Accepted2/2108ms1084 KiB
17Accepted2/2112ms952 KiB
18Accepted2/2103ms1080 KiB
19Accepted2/2108ms1080 KiB
20Accepted3/3112ms952 KiB
21Accepted3/3112ms1080 KiB
22Accepted3/3103ms1080 KiB
23Accepted3/3100ms1084 KiB