Language: C++

#include <iostream>
#include <string.h>
#include <algorithm>
#include <math.h>
#include <set>
#include <vector>
#include <queue>
#include <map>
#include <cstdio>
#include <stdlib.h>
#include <time.h>
#include <fstream>
#include <windows.h>
#include <iomanip>
#include <sstream>
#define ll long long
#define uint unsigned int
#define ull unsigned ll
#define pi pair<int, int>
#define pl pair<ll, ll>
#define upi pair<uint, uint>
#define upl pair<ull, ull>
#define pb push_back
#define mp make_pair
using namespace std;
const double PI=3.141592653589793;
ull max_ull=18446744073709551615;
uint max_uint=4294967295;
ll max_ll=9223372036854775807;
ll min_ll=-9223372036854775808;
int max_int=-2147483648;
int min_int=2147483647;
ull jc(ull n)
{
  if (n<=1) return n;
  else return jc(n-1)*n;
}
void jz(char *s, int n, int b)
{
  string list="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";
  ull len;
  if (n==0)
  {
		strcpy(s, "");
		return;
  }
  jz(s, n/b, b);
  len=strlen(s);
  s[len]=list[n%b];
  s[len+1]='\0';
}
ull Log(ull x, ull y)
{
	for (int i=1; ; i++) if (pow(x, i)==y) return i;
}
int cmp(string x, string y)
{
	int len_a=x.length(), len_b=y.length();
	if (len_a<len_b) return -1;
	if (len_a>len_b) return 1;
	for (int i=0; i<len_a; i++)
	{
		if (x[i]>y[i]) return 1;
		if (x[i]<y[i]) return -1;
	}
	return 0;
}
int SJS(int a, int b)
{
	return rand()%(a-b+1)+a;
}
ull sti(string x)
{
	int len=x.length();
	ll ret=0;
	for (int i=0; i<len; i++) ret+=pow(10, len-i-1)*(int)(x[i]-'0');
	return ret;
}
string its(ull p)
{
	ostringstream ss;
	ss<<p;
	return ss.str();
}
string PLUS(string x, string y)
{
	string ret="";
	int a[100010], b[100010], c[100010];
	memset(a, 0, sizeof(a));
	memset(b, 0, sizeof(b));
	memset(c, 0, sizeof(c));
	int len_a=x.length();
	int len_b=y.length();
	for (int i=0; i<len_a; i++) a[len_a-i]=(int)x[i]-'0';
	for (int i=0; i<len_b; i++) b[len_b-i]=(int)y[i]-'0';
	int len_c=1, n=0;
	while (len_c<=len_a||len_c<=len_b)
  {
    c[len_c]=a[len_c]+b[len_c]+n;
    n=c[len_c]/10;
    c[len_c]%=10;
    len_c++;
  }
  c[len_c]=n;
  for (int i=len_c-(c[len_c]==0); i>0; i--) ret+=(char)c[i]+'0';
  return ret;
}
string MINUS(string x, string y)
{
	string ret="";
	int a[100010], b[100010], c[100010], i;
	int len_a=x.length(), len_b=y.length();
	memset(a, 0, sizeof(a));
	memset(b, 0, sizeof(b));
	memset(c, 0, sizeof(c));
	if (len_a<len_b||(len_a==len_b&&cmp(x, y)==-1))
	{
		swap(x, y);
		ret+='-';
		swap(len_a, len_b);
	}
	for (i=0; i<len_a;i++) a[len_a-i]=(int)x[i] - '0';
  for (i=0; i<len_b;i++) b[len_b-i]=(int)y[i] - '0';
  i=1;
  while (i<=len_a||i<=len_b)
  {
  	if (a[i]<b[i]) a[i]+=10, a[i+1]--;
  	c[i]=a[i]-b[i], i++;
	}
	int len_c=i;
	while (c[len_c]==0&&len_c>1) len_c--;
	for (i=len_c; i>=1; i--) ret+=(char)c[i]+'0';
	return ret;
}
string MULTIPLY(string s, string t)
{
  int sum[100010], a[100010], b[100010], i, j, start, len_a, len_b;
  char goal[100010];
  reverse(s.begin(), s.end());
  reverse(t.begin(), t.end());
  len_a=s.length();
  len_b=t.length();
  for (i=0; i<len_a; i++) a[i]=(int)s[i] - '0';
  for (i=0; i<len_b; i++) b[i]=(int)t[i] - '0';
  for (i=0; i<len_a; i++)
	{
  	start=i;
		for (j=0; j<len_b; j++) sum[start]+=a[i]*b[j], start++;
  }
  for (i=0; i<start; i++)
	{
    sum[i+1]+=sum[i] / 10;
    sum[i] = sum[i] % 10;
  }
  while (sum[i]==0) i--;
  start=0;
  for (j=i ;j>=0; j--)
	{
    goal[start]=(char)(sum[j]+'0');
    start ++;
  }
  goal[start]='\0';
  return (string)goal;
}
int main()
{
  srand(time(NULL));
  //freopen("sample_in.txt", "r", stdin);
  //freopen("sample_out.txt", "w", stdout);
  //ofstream outfile;
  //ifstream infile;
  ios::sync_with_stdio(false);
  cin.tie(NULL);
  cout.tie(NULL);
  int a, b;
  cin>>a>>b;
  cout<<(a+b+1)/2<<endl;
  return 0;
}





Compiler output:
a.cc:13:10: fatal error: windows.h: No such file or directory
   13 | #include <windows.h>
      |          ^~~~~~~~~~~
compilation terminated.