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


#define ll long long
#define M1 1000000007
#define M2 998244353

int main(){
  ios_base::sync_with_stdio(0);
  cin.tie(0);cout.tie(0);
  /////////////////////////////
  int maxn = 62;
  int a,b;
  ll k;
  cin>>a>>b>>k;
  // Pre-Compute nCr values;
  vector<vector<ll>>nCr(maxn,vector<ll>(maxn));
  nCr[0][0] = 1;
  for(int i=1;i<maxn;i++){
    nCr[i][0] = 1;
  }
  for(int n=1;n<maxn;n++){
    for(int r =1;r<=n;r++){
        nCr[n][r] = nCr[n-1][r] + nCr[n-1][r-1];
    }
  }
  ll req =k;
  int n = a+b;
  for(int i=0;i<n;i++){
   ll cnt = nCr[a+b-1][b];
   if(cnt>=k){
    cout<<"a";
    a--;
   }
   else{
    cout<<"b";
    b--;
    k-=cnt;
   }

  }
  return 0;
}

//
//
// File Creation Date:
// Author: Gourav(https://github.com/GouravKhunger)

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

typedef long long ll;
typedef long double ld;
typedef vector<int> vi;
typedef pair<int, int> pii;
typedef vector<pii> vpii;
typedef vector<ll> vll;
typedef set<int> si;
typedef priority_queue<int> pq;
typedef priority_queue<int,vector<int>,greater<int>> pqs;

#define F first
#define S second
#define PB push_back
#define MP make_pair
#define FOR(i, a, b) for (int i=a; i<=b; i++)
#define FORn(i, a, b) for (int i=a; i>=b; i--)
#define all(v) v.begin(), v.end()
#define allR(v) v.rbegin(), v.rend()
#define rng_init mt19937 rng(chrono::steady_clock::now().time_since_epoch().count())
#define FIO ios_base::sync_with_stdio(0);cin.tie(0);cout.tie(0);

void dbg_out() { cerr << endl; }
template<typename Head, typename... Tail> void dbg_out(Head H, Tail... T) { cerr << ' ' << H; dbg_out(T...); }
#define dbg(...) cerr << "(" << #__VA_ARGS__ << "):", dbg_out(__VA_ARGS__)

const int MOD = 1e9+7;
const ll INF = 1e15;

int main() {
	FIO;

    //start here

ll a, b, c;
cin>>a>>b>>c;

if(a*a+b*b<c*c) cout<<"Yes";
else cout<<"No";

    //end here

    return 0;
}
