C++2025年3月等级考试试题(部分)

#include<bits/stdc++.h>
#include<algorithm>
using namespace std;
float a[110]={0};
int n;
float sum;
int main()
{
	cin>>n;
	for(int i=0;i<n;i++)
	{
		cin>>a[i];
	}
	sum=a[0];
	sort(a+0,a+n);
	for(int i=1;i<n;i++)
	{
		sum=(sum+a[i])/2;
	}
	sum=sum+0.5;
	cout<<(int)sum;
	
	
	return 0;
}

#include<iostream>
#include<algorithm>
using namespace std;
struct s
{
	int v;
	int t;
};
s que[200005]={0};

void func(int);
bool c[200005]={0};
int a,b;
int n;
int main()
{
	cin>>a>>b>>n;
	func(a);
	
	
    return 0;
}
void func(int m)
{
	int head=0;
	int tail=0;
	c[n+100000]=1;
	que[++tail]=s{n,0};
	while(head<tail)
	{
		s h=que[head];
		if(h.v==b)
		{
			cout<<h.t+2;
			break;
		}
		int v=h.v+1;
		int in=v+100000;
		if(in>=0&&in<200005&&c[in]==0)
		{
			que[++tail]=s{v,h.t+1};
			c[in]=1;
		}
		v=h.v-1;
		in=v+100000;
		if(in>=0&&in<200005&&c[in]==0)
		{
			que[++tail]=s{v,h.t+1};
			c[in]=1;
		}
		v=h.v*n;
		in=v+100000;
		if(in>=0&&in<200005&&c[in]==0)
		{
			que[++tail]=s{v,h.t+1};
			c[in]=1;
		}
		head++;
	}
}