#include <iostream>
#include <algorithm>
#include <vector>
#include <bitset>
using namespace std;

void expr(){
    const int n = 4;
    const int m = (1<<(n-1));
    for(int x = 0; x < m; x++){
        for(int y = 0; y < m; y++){
            string xs = bitset<(n-1)>(x).to_string();
            string ys = bitset<(n-1)>(y).to_string();
            int cnt[2] = {0, 0};
            for(char c: xs) cnt[c-'0']++;
            for(char c: ys) cnt[c-'0']--;
            if(cnt[0] != 1 || cnt[1] != -1) continue;
            cout << xs << endl;
            cout << ys << endl;

            cout << "x     = " << bitset<n>(x+m) << endl;
            cout << "    y = " << bitset<n>(y) << endl;
            cout << "x - y = " << bitset<n>(x+m-y) << endl << endl;
        }
    }
}

int main(void){
    // expr(); return 0;

    int a, b, k;
    cin >> a >> b >> k;
    if(k == 0){
        puts("Yes");
        cout << string(b, '1') << string(a, '0') << endl;
        cout << string(b, '1') << string(a, '0') << endl;
        return 0;
    }
    if(b == 1 || a == 0 || a+b <= k+1){
        puts("No");
        return 0;
    }

    string common = string(a-1, '0') + string(b-2, '1');
    puts("Yes");
    cout << "11" << common.substr(0, k-1) << "0" << common.substr(k-1) << endl;
    cout << "10" << common.substr(0, k-1) << "1" << common.substr(k-1) << endl;



}
