130212025-01-04 18:00:02SRobBináris fa magassága (50 pont)cpp17Time limit exceeded 20/50600ms1268 KiB
// binaris_fa_magassaga_2024_12_29.cpp : Defines the entry point for the console application.
//

//#include "stdafx.h"

#include <vector>
#include <algorithm>
#include <iostream>
#include <cmath>

using namespace std;



int main()
{
	
	int size,O;
	size = 0;
	O = 0;
	int mE,V;
	cin >> size >> O;
	int edges[100000];
	int nodes[100000];
	fill(edges, edges+ 100000,1);
	fill(nodes, nodes+ 100000,0);
	edges[0] = 0;
	edges[1] = 0;
	int x; // while segéd
	for (int i = 1; i < pow(2, size); i++)
	{
		nodes[i] = size-floor(log2(i))-1;
	}
	for (int i = 0; i < O; i++)
	{
		cin >> mE >> V;
		edges[mE] = V;
		for (int j = pow(2, size-1); j < pow(2, size); j += 2)
		{
			x = j;
			while (x != 1)
			{
				
				if(x % 2 == 0)
				{
  				nodes[x/2] = max((edges[x] + nodes[x]), (edges[x+1]+nodes[x+1]));
  				//cout<<"x: "<< x << "  vizsgált edge pár: " << x <<" "<<x+1<<"  vizsgált node pár: "<<nodes[x]<<" "<<nodes[x+1] <<"  a(z) "<<(x/2)<< ". változtatott node értéke: "<<nodes[x/2]<<endl;
  				x = x/2;
				}
				else
				{
				  nodes[x/2] = max((edges[x] + nodes[x]), (edges[x-1]+nodes[x-1]));
  				//cout<<"x: "<< x << "  vizsgált edge pár: " << x <<" "<<x+1<<"  vizsgált node pár: "<<nodes[x]<<" "<<nodes[x+1] <<"  a(z) "<<(x/2)<< ". változtatott node értéke: "<<nodes[x/2]<<endl;
  				x = x/2;
				}
			}
		}
		cout<< nodes[1] <<endl;
	}
	
}
  
SubtaskSumTestVerdictTimeMemory
base20/50
1Accepted0/02ms1080 KiB
2Time limit exceeded0/0570ms1264 KiB
3Accepted2/24ms1080 KiB
4Accepted2/24ms1256 KiB
5Accepted2/24ms1268 KiB
6Accepted2/24ms1080 KiB
7Accepted3/34ms1080 KiB
8Accepted3/34ms1156 KiB
9Accepted3/37ms1268 KiB
10Accepted3/37ms1080 KiB
11Time limit exceeded0/2600ms1080 KiB
12Time limit exceeded0/2600ms1080 KiB
13Time limit exceeded0/2600ms1180 KiB
14Time limit exceeded0/2583ms1080 KiB
15Time limit exceeded0/2587ms1080 KiB
16Time limit exceeded0/2600ms1080 KiB
17Time limit exceeded0/2598ms1180 KiB
18Time limit exceeded0/2587ms1080 KiB
19Time limit exceeded0/2592ms1080 KiB
20Time limit exceeded0/3600ms1080 KiB
21Time limit exceeded0/3600ms1080 KiB
22Time limit exceeded0/3577ms1268 KiB
23Time limit exceeded0/3587ms1080 KiB