#include <iostream>
#include <sstream>
#include <string>
#include <algorithm>
#include <random>
using namespace std;
int fouriest_transform(int num)
{
static const char FOUR = '4';
string result = to_string(num);
replace(result.begin(), result.end(), '0', FOUR);
replace(result.begin(), result.end(), '1', FOUR);
replace(result.begin(), result.end(), '2', FOUR);
replace(result.begin(), result.end(), '3', FOUR);
replace(result.begin(), result.end(), '4', FOUR);
replace(result.begin(), result.end(), '5', FOUR);
replace(result.begin(), result.end(), '6', FOUR);
replace(result.begin(), result.end(), '7', FOUR);
replace(result.begin(), result.end(), '8', FOUR);
replace(result.begin(), result.end(), '9', FOUR);
return stoi(result);
}
int main()
{
default_random_engine rng;
uniform_int_distribution<int> distr(500, 999999999);
int num;
cout << (num = distr(rng)) << " -> " << fouriest_transform(num) << endl;
cout << (num = distr(rng)) << " -> " << fouriest_transform(num) << endl;
cout << (num = distr(rng)) << " -> " << fouriest_transform(num) << endl;
cout << (num = distr(rng)) << " -> " << fouriest_transform(num) << endl;
cout << (num = distr(rng)) << " -> " << fouriest_transform(num) << endl;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8c3N0cmVhbT4KI2luY2x1ZGUgPHN0cmluZz4KI2luY2x1ZGUgPGFsZ29yaXRobT4KI2luY2x1ZGUgPHJhbmRvbT4KCnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgppbnQgZm91cmllc3RfdHJhbnNmb3JtKGludCBudW0pCnsKCXN0YXRpYyBjb25zdCBjaGFyIEZPVVIgPSAnNCc7CgkKCXN0cmluZyByZXN1bHQgPSB0b19zdHJpbmcobnVtKTsKCXJlcGxhY2UocmVzdWx0LmJlZ2luKCksIHJlc3VsdC5lbmQoKSwgJzAnLCBGT1VSKTsKCXJlcGxhY2UocmVzdWx0LmJlZ2luKCksIHJlc3VsdC5lbmQoKSwgJzEnLCBGT1VSKTsKCXJlcGxhY2UocmVzdWx0LmJlZ2luKCksIHJlc3VsdC5lbmQoKSwgJzInLCBGT1VSKTsKCXJlcGxhY2UocmVzdWx0LmJlZ2luKCksIHJlc3VsdC5lbmQoKSwgJzMnLCBGT1VSKTsKCXJlcGxhY2UocmVzdWx0LmJlZ2luKCksIHJlc3VsdC5lbmQoKSwgJzQnLCBGT1VSKTsKCXJlcGxhY2UocmVzdWx0LmJlZ2luKCksIHJlc3VsdC5lbmQoKSwgJzUnLCBGT1VSKTsKCXJlcGxhY2UocmVzdWx0LmJlZ2luKCksIHJlc3VsdC5lbmQoKSwgJzYnLCBGT1VSKTsKCXJlcGxhY2UocmVzdWx0LmJlZ2luKCksIHJlc3VsdC5lbmQoKSwgJzcnLCBGT1VSKTsKCXJlcGxhY2UocmVzdWx0LmJlZ2luKCksIHJlc3VsdC5lbmQoKSwgJzgnLCBGT1VSKTsKCXJlcGxhY2UocmVzdWx0LmJlZ2luKCksIHJlc3VsdC5lbmQoKSwgJzknLCBGT1VSKTsKCQoJcmV0dXJuIHN0b2kocmVzdWx0KTsKfQoKaW50IG1haW4oKQp7CglkZWZhdWx0X3JhbmRvbV9lbmdpbmUgcm5nOwoJdW5pZm9ybV9pbnRfZGlzdHJpYnV0aW9uPGludD4gZGlzdHIoNTAwLCA5OTk5OTk5OTkpOwoJaW50IG51bTsKCQoJY291dCA8PCAobnVtID0gZGlzdHIocm5nKSkgPDwgIiAtPiAiIDw8IGZvdXJpZXN0X3RyYW5zZm9ybShudW0pIDw8IGVuZGw7Cgljb3V0IDw8IChudW0gPSBkaXN0cihybmcpKSA8PCAiIC0+ICIgPDwgZm91cmllc3RfdHJhbnNmb3JtKG51bSkgPDwgZW5kbDsKCWNvdXQgPDwgKG51bSA9IGRpc3RyKHJuZykpIDw8ICIgLT4gIiA8PCBmb3VyaWVzdF90cmFuc2Zvcm0obnVtKSA8PCBlbmRsOwoJY291dCA8PCAobnVtID0gZGlzdHIocm5nKSkgPDwgIiAtPiAiIDw8IGZvdXJpZXN0X3RyYW5zZm9ybShudW0pIDw8IGVuZGw7Cgljb3V0IDw8IChudW0gPSBkaXN0cihybmcpKSA8PCAiIC0+ICIgPDwgZm91cmllc3RfdHJhbnNmb3JtKG51bSkgPDwgZW5kbDsKCQoJcmV0dXJuIDA7Cn0K