Go: package main

import "fmt"

func max(a, b int) int {
	if a < b {
		return b
	}
	return a
}

func max3(a, b, c int) int {
	return max(max(a, b), c)
}

func main() {
	var (
		a, b, c int
		ch      byte
	)
	fmt.Scanln(&a, &b, &c)
	m := max3(a, b, c)
	switch m {
	case a:
		ch = 'A'
	case b:
		ch = 'B'
	case c:
		ch = 'C'
	}
	fmt.Printf("%c\n", ch)
}

C++: #include<iostream>
using namespace std;

int max(int a,int b){
	return (a>b)?a:b;
}

int main(){
	int a,b,c;
	cin>>a>>b>>c;
	if(a>b){
		if(b>c){
			cout<<"A"<<endl;
		}else{
			if(a>c)cout<<"A"<<endl;
			else cout<<"C"<<endl;
		}
	}else{
		if(b>c){
			cout<<"B"<<endl;
		}else{
			cout<<"C"<<endl;
		}
	}
	return 0;
}

C++: #include <bits/stdc++.h>
using namespace std;
using ll = long long;
const ll INF = 1e16;
const ll mod = 1000000007;
#define rep(i, n) for (int i = 0; i < (int)(n); i++)

template<class T> inline bool chmax(T& a, T b) {
  if (a < b) {
    a = b;
    return 1;
  }
  return 0;
}
template<class T> inline bool chmin(T& a, T b) {
  if (a > b) {
    a = b;
    return 1;
  }
  return 0;
}
int ctoi(char c) {
  if (c >= '0' && c <= '9') {
    return c - '0';
  }
  return 0;
}
ll factorial(ll n) {
  if (n == 1) {
    return 1;
  }
  ll ans = factorial(n-1);
  return ans*n;
}
ll gcd(ll a, ll b) {
  if (b == 0) return a;
  return gcd(b, a%b);
}
ll lcm(ll a, ll b) {
  return (a/gcd(a, b))*b;
}
bool is_prime(ll n) {
  for (ll i = 2; i*i <= n; i++) {
    if (n%i == 0) return false;
  }
  return n != 1;
}
ll mod_pow(ll x, ll n, ll mod) {
  if (n == 0) return 1;
  ll res = mod_pow(x*x%mod, n/2, mod);
  if (n & 1) res = res * x % mod;
  return res;
}

int main() {
    ll res, tmp = 0;
    rep(i, 3) {
        ll a;
        cin >> a;
        if (a > tmp) {
            tmp = a;
            res = i;
        }
    }
    char ans = 'A' + res;
    cout << ans << endl;
}

C++: #include <bits/stdc++.h>
using namespace std;
using ll = long long;

ll N, K;
vector<ll> u, v;

int main()
{
    int a, b, c;
    cin >> a >> b >> c;
    if (max({a, b, c}) == a)
        cout << "A" << endl;
    else if (max({a, b, c}) == b)
        cout << "B" << endl;
    else
        cout << "C" << endl;
}

C++: #include "bits/stdc++.h"

#define REP(i,n) for(ll i=0;i<ll(n);++i)
#define RREP(i,n) for(ll i=ll(n)-1;i>=0;--i)
#define FOR(i,m,n) for(ll i=m;i<ll(n);++i)
#define RFOR(i,m,n) for(ll i=ll(n)-1;i>=ll(m);--i)
#define ALL(v) (v).begin(),(v).end()
#define UNIQUE(v) v.erase(unique(ALL(v)),v.end());
#define INF 1000000001ll
#define MOD 1000000007ll
#define EPS 1e-9

constexpr int dx[8] = { 1,1,0,-1,-1,-1,0,1 };
constexpr int dy[8] = { 0,1,1,1,0,-1,-1,-1 };


using namespace std;

using ll = long long;
using vi = vector<int>;
using vl = vector<ll>;
using vvi = vector<vi>;
using vvl = vector<vl>;
using pii = pair<int, int>;
using pll = pair<ll, ll>;

template <class T> bool chmin(T &a, T b) { if (a > b) { a = b; return true; } return false; }
template <class T> bool chmax(T &a, T b) { if (a < b) { a = b; return true; } return false; }

int main() {
	cin.tie(0);
	ios::sync_with_stdio(false);
	vector<pii> v(3);
	REP(i, 3) {
		cin >> v[i].first;
		v[i].second = i;
	}
	sort(ALL(v));
	cout << char(v[2].second + 'A') << endl;
}

C++: #include<iostream>

using namespace std;

int main(){
    int a,b,c;
    
    cin>>a>>b>>c;
    if(a>b && a>c) cout<<"A"<<endl;
    else if(b>a && b>c) cout<<"B"<<endl;
    else if(c>a && c>b) cout<<"C"<<endl;
    
    return 0;
}

C++: #include <bits/stdc++.h>
using namespace std;

int main() {
    int a,b,c,d,i=0,j=0;
    cin>>a>>b>>c;
    if(a>b){
        if(a>c)
            cout<<"A"<<endl;
        else
            cout<<"C"<<endl;
    }else{
        if(b>c)
            cout<<"B"<<endl;
        else
            cout<<"C"<<endl;
    }
    return 0;
}

C++: #include<iostream>
#include<algorithm>
#include<cstdio>
#include<cmath>
#include<cctype>
#include<math.h>
#include<string>
#include<string.h>
#include<stack>
#include<queue>
#include<vector>
#include<utility>
#include<set>
#include<map>
#include<stdlib.h>
#include<iomanip>

using namespace std;

#define ll long long
#define ld long double
#define EPS 0.0000000001
#define INF 1e9
#define LINF (ll)INF*INF
#define MOD 1000000007
#define rep(i,n) for(int i=0;i<(n);i++)
#define loop(i,a,n) for(int i=a;i<(n);i++)
#define all(in) in.begin(),in.end()
#define shosu(x) fixed<<setprecision(x)

#define int ll //!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

typedef vector<int> vi;
typedef vector<string> vs;
typedef pair<int,int> pii;
typedef vector<pii> vp;

int gcd(int a, int b){
    if(b==0) return a;
    return gcd(b,a%b);
}
int lcm(int a, int b){
    return a/gcd(a,b)*b;
}


signed main(void) {
    int n = 3;
    vp in(n);
    rep(i,n){
        cin >> in[i].first;
        in[i].second = i;
    }
    sort(all(in));
    cout << char('A' + in.back().second) << endl;

}

C++: #include "iostream"
#include "climits"
#include "list"
#include "queue"
#include "stack"
#include "set"
#include "functional"
#include "algorithm"
#include "string"
#include "map"
#include "unordered_map"
#include "unordered_set"
#include "iomanip"
#include "cmath"
#include "random"
#include "bitset"
#include "cstdio"
#include "numeric"
#include "cassert"

using namespace std;

const long long int MOD = 1000000007;
//const int MOD = 998244353;

long long int N, M, K, H, W, L, R;
//int N, M, K, H, W, L, R


int main() {
	ios::sync_with_stdio(false);
	cin.tie(0);

	cin >> N >> M >> K;
	if (N > M&&N > K) {
		cout << "A\n";
	}
	else if (M > K) {
		cout << "B\n";
	}
	else {
		cout << "C\n";
	}
	return 0;
}

C++: #include <bits/stdc++.h>
#define ll long long
#define INF 1000000005
#define MOD 1000000007
#define EPS 1e-10
#define rep(i,n) for(int i=0;i<(int)(n);++i)
#define rrep(i,n) for(int i=(int)(n)-1;i>=0;--i)
#define srep(i,s,t) for(int i=(int)(s);i<(int)(t);++i)
#define each(a,b) for(auto& (a): (b))
#define all(v) (v).begin(),(v).end()
#define len(v) (int)(v).size()
#define zip(v) sort(all(v)),v.erase(unique(all(v)),v.end())
#define cmx(x,y) x=max(x,y)
#define cmn(x,y) x=min(x,y)
#define fi first
#define se second
#define pb push_back
#define show(x) cout<<#x<<" = "<<(x)<<endl
#define sar(a,n) cout<<#a<<":";rep(pachico,n)cout<<" "<<a[pachico];cout<<endl

using namespace std;

template<typename S,typename T>auto&operator<<(ostream&o,pair<S,T>p){return o<<"{"<<p.fi<<","<<p.se<<"}";}
template<typename T>auto&operator<<(ostream&o,set<T>s){for(auto&e:s)o<<e<<" ";return o;}
template<typename S,typename T,typename U>
auto&operator<<(ostream&o,priority_queue<S,T,U>q){while(!q.empty())o<<q.top()<<" ",q.pop();return o;}
template<typename K,typename T>auto&operator<<(ostream&o,map<K,T>m){for(auto&e:m)o<<e<<" ";return o;}
template<typename T>auto&operator<<(ostream&o,vector<T>v){for(auto&e:v)o<<e<<" ";return o;}
void ashow(){cout<<endl;}template<typename T,typename...A>void ashow(T t,A...a){cout<<t<<" ";ashow(a...);}

typedef pair<int,int> P;
typedef pair<ll,ll> pll;
typedef vector<int> vi;
typedef vector<ll> vl;
typedef vector<vi> vvi;
typedef vector<vl> vvl;
typedef vector<P> vp;
typedef vector<double> vd;
typedef vector<string> vs;

const int MAX_N = 100005;

int main()
{
    cin.tie(0);
    ios::sync_with_stdio(false);
    int a, b, c;
    cin >> a >> b >> c;
    int mx = max({a, b, c});
    if(mx == a){
        cout << "A\n";
    }else if(mx == b){
        cout << "B\n";
    }else{
        cout << "C\n";
    }
    return 0;
}