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 <bits/stdc++.h>
  
using namespace std;
  
#define rep(i,n) REP(i,0,n)
#define REP(i,s,e) for(int i=(s); i<(int)(e); i++)
#define repr(i, n) REPR(i, n, 0)
#define REPR(i, s, e) for(int i=(int)(s-1); i>=(int)(e); i--)
#define pb push_back
#define all(r) r.begin(),r.end()
#define rall(r) r.rbegin(),r.rend()
#define fi first
#define se second
  
typedef long long ll;
typedef vector<int> vi;
typedef vector<ll> vl;
typedef pair<int, int> pii;
typedef pair<ll, ll> pll;
 
const int INF = 1e9;
const ll MOD = 1e9 + 7;
double EPS = 1e-8;

int main(){
    int a, b, c;
    cin >> a >> b >> c;
    int x = max({a, b, c});
    int ans = 2;
    if(x == a) ans = 0;
    else if(x == b) ans = 1;
    cout << "ABC"[ans] << endl;
    return 0;
}

C++: #include <iostream>
using namespace std;
int main(void){
    int a, b, c;
    cin >> a >> b >> c;
    int max = a;
    if(b > max) max = b;
    if(c > max) max = c;

    if(max == a) cout << "A" << endl;
    else if(max == b) cout << "B" << endl;
    else cout << "C" << endl;
}

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

int main() {
    int a, b, c;

    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;
        }
    }
}

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


signed main(){
    ll a,b,c;
    cin>>a>>b>>c;
    ll m=max({a,b,c});
    if(a==m)cout<<"A\n";
    if(b==m)cout<<"B\n";
    if(c==m)cout<<"C\n";
}

C++: #include <bits/stdc++.h>
#define REP(i, a, n) for (ll i = ((ll) a); i < ((ll) n); i++)
using namespace std;
typedef long long ll;

int main(void) {
  ll A, B, C;
  cin >> A >> B >> C;

  ll x = max({ A, B, C });
  if (x == A) cout << "A" << endl;
  if (x == B) cout << "B" << endl;
  if (x == C) cout << "C" << endl;
}

C++: #include <iostream>
#include <algorithm>
#include <string>
#include <vector>
#include <stack>
#include <queue>
#include <set>
#include <bitset>
#include <map>
#include <tuple>
#include <unordered_set>
#include <unordered_map>
#include <list>
#include <numeric>
#include <utility>
#include <iterator>
#include <cstdio>
#include <cmath>
#include <cstdlib>
#include <cstring>
#include <climits>
#include <ctime>
#include <cassert>
#include <random>
#include <cstring>


#define rep(i,n) for(int i=0;i<int(n);i++)
#define all(x) (x).begin(),x.end()
#define pb push_back

using namespace std;
using ll = long long;

const ll mod = 1000000007;
int dx[4]={1,0,-1,0};
int dy[4]={0,1,0,-1};
int ddx[8]={-1,-1,0,1,1,1,0,-1};
int ddy[8]={0,1,1,1,0,-1,-1,-1};
bool debug=false;

/*---------------------------------------------------*/

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

C++: #include <iostream>
#include <vector>
#include <algorithm>
#include <map>
#include <set>
#include <stack>
using namespace std;
typedef long long int ll;

int main(){
	cin.tie(nullptr);
	ios::sync_with_stdio(false);
	int a,b,c; cin >> a >> b >> c;
	int ma=max(a,max(b,c));
	if(ma==a){
		cout << "A" << endl;
	}
	else if(ma==b){
		cout << "B" << endl;
	}
	else{
		cout << "C" << endl;
	}
}

C++: #include <iostream>
#include <algorithm>

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{
    cout << "C" << endl;
  }
  return 0;
}

C++: #include <bits/stdc++.h>
#define chmin(a, b) ((a)=min((a), (b)))
#define chmax(a, b) ((a)=max((a), (b)))
#define fs first
#define sc second
#define eb emplace_back
using namespace std;

typedef long long ll;
typedef pair<int, int> P;
typedef tuple<int, int, int> T;

const ll MOD=1e9+7;
const ll INF=1e18;
const double pi=acos(-1);
const double eps=1e-10;

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

int main(){
    vector<P> v;
    for(int i=0; i<3; i++){
        int x; cin>>x;
        v.push_back(P(x, i));
    }

    sort(v.begin(), v.end());
    cout << (char)('A'+v[2].sc) << endl;
}

C++: #include <iostream>
#include <algorithm>

using namespace std;

int main() {
    int ABC[3];
    cin >> ABC[0];
    cin >> ABC[1];
    cin >> ABC[2];

    cout << (char) ('A' + max_element(ABC, ABC + 3) - ABC) << endl;
}

C++: #include <iostream>

using namespace std;

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

C++: #include <iostream>
#include <algorithm>
#include <string>
#include <vector>
#include <stack>
#include <queue>
#include <set>
#include <bitset>
#include <map>
#include <tuple>
#include <unordered_set>
#include <unordered_map>
#include <list>
#include <numeric>
#include <utility>
#include <iterator>
#include <cstdio>
#include <cmath>
#include <cstdlib>
#include <cstring>
#include <climits>
#include <ctime>
#include <cassert>
#include <random>
#include <cstring>

#define rep(i,n) for(int i=0;i<int(n);i++)
#define all(x) (x).begin(),x.end()
#define pb push_back

using namespace std;
using ll = long long;

const ll mod = 1000000007;
int dx[4]={1,0,-1,0};
int dy[4]={0,1,0,-1};
int ddx[8]={-1,-1,0,1,1,1,0,-1};
int ddy[8]={0,1,1,1,0,-1,-1,-1};
bool debug=false;

/*---------------------------------------------------*/

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 cout << "C" << endl;
  return 0;
}

C++: #include <cstdio>
#include <utility>
#include <algorithm>
#include <vector>
#include <string>

int main() {
  std::vector<std::pair<int, char>> a;
  for (int i = 0; i < 3; ++i) {
    int x;
    scanf("%d", &x);
    a.emplace_back(x, 'A'+i);
  }

  std::sort(a.rbegin(), a.rend());
  printf("%c\n", a[0].second);
}

C++: #include<algorithm>
#include<cmath>
#include<fstream>
#include<iomanip>
#include<iostream>
#include<map>
#include<numeric>
#include<queue>
#include<random>
#include<set>
#include<sstream>
#include<sys/time.h>
#include<unordered_map>
#include<unordered_set>
#include<vector>

using namespace std;

#define INF 1001000100010001000
#define MOD 1000000007
#define EPS 1e-10
#define int long long
#define rep(i, N) for (int i = 0; i < N; i++)
#define Rep(i, N) for (int i = 1; i < N; i++)
#define For(i, a, b) for (int i = (a); i < (b); i++)
#define pb push_back
#define eb emplace_back
#define mp make_pair
#define pii pair<int, int>
#define vi vector<int>
#define vvi vector<vi >
#define vb vector<bool>
#define vvb vector<vb >
#define vp vector< pii >
#define all(a) (a).begin(), (a).end()
#define Int(x) int x; cin >> x;
#define int2(x, y) Int(x); Int(y);
#define int3(x, y, z) Int(x); int2(y, z);
#define in(x, a, b) ((a) <= (x) && (x) < (b))
#define fir first
#define sec second
#define ffir first.first
#define fsec first.second
#define sfir second.first
#define ssec second.second
#define Decimal fixed << setprecision(10)

//int dxy[5] = {0, 1, 0, -1, 0};
// cmd${0:#:TARGET}

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

    int3(a, b, c);

    if (a == max({a, b, c})) {
        cout << 'A' << endl;
    } else 
    if (b == max({a, b, c})) {
        cout << 'B' << endl;
    } else 
    if (c == max({a, b, c})) {
        cout << 'C' << endl;
    }

    return 0;
}