2019 Blue Bridge Cup Pregunta G --- Pesos de árboles binarios completos

Inserte la descripción de la imagen aquí
código:

#include<stdio.h>
#include<math.h>
 
int main(){
    
    
	int n;
	scanf("%d",&n);
	int a[n+1];
	for(int i=1;i<=n;i++){
    
    
		scanf("%d",&a[i]);
	}
	int len=1;
	for(;pow(2,len)-1<n;len++){
    
    }
	int maxsum=0;
	int deep=1;
	
	for(int ii=1;ii<=len;ii++){
    
    
		int sum=0;
		for(int j=pow(2,ii-1);j<=n&&j<pow(2,ii);j++){
    
    
			sum+=a[j];
		}
		if(sum>maxsum){
    
    
			maxsum=sum;
			deep=ii;
		}
	}
	printf("%d",deep);
	return 0;
} 

Supongo que te gusta

Origin blog.csdn.net/timelessx_x/article/details/115026683
Recomendado
Clasificación