#include <iostream>
#include <random>
#include <string>
int FirstNumber(unsigned long n) {
while (n >= 10)
n /= 10;
return n;
}
int main() {
int histo[10];
std::random_device rd;
std::mt19937_64 gen(rd());
for (int i = 0; i < 10000000; ++i) {
std::uniform_int_distribution<unsigned long> upper(1, 100000);
unsigned long u = upper(gen), l = upper(gen);
if (l >= u) { l = l ^ u; u = l ^ u; l = l ^ u; }
std::uniform_int_distribution<unsigned long> dist(l, u);
histo[FirstNumber(dist(gen))]++;
}
int max = 0;
for (int i = 0; i < 10; ++i)
if (max < histo[i]) max = histo[i];
for (int i = 0; i < 10; ++i)
std::cout << i << " " << std::string(90 * histo[i] / max, '*') << std::endl;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8cmFuZG9tPgojaW5jbHVkZSA8c3RyaW5nPgoKaW50IEZpcnN0TnVtYmVyKHVuc2lnbmVkIGxvbmcgbikgewogICAgd2hpbGUgKG4gPj0gMTApCiAgICAgICAgbiAvPSAxMDsKCiAgICByZXR1cm4gbjsKfQoKaW50IG1haW4oKSB7CiAgICBpbnQgaGlzdG9bMTBdOwogICAgc3RkOjpyYW5kb21fZGV2aWNlIHJkOwogICAgc3RkOjptdDE5OTM3XzY0IGdlbihyZCgpKTsKCiAgICBmb3IgKGludCBpID0gMDsgaSA8IDEwMDAwMDAwOyArK2kpIHsKICAgICAgICBzdGQ6OnVuaWZvcm1faW50X2Rpc3RyaWJ1dGlvbjx1bnNpZ25lZCBsb25nPiB1cHBlcigxLCAxMDAwMDApOwogICAgICAgIHVuc2lnbmVkIGxvbmcgdSA9IHVwcGVyKGdlbiksIGwgPSB1cHBlcihnZW4pOwogICAgICAgIGlmIChsID49IHUpIHsgbCA9IGwgXiB1OyB1ID0gbCBeIHU7IGwgPSBsIF4gdTsgfQogICAgICAgIHN0ZDo6dW5pZm9ybV9pbnRfZGlzdHJpYnV0aW9uPHVuc2lnbmVkIGxvbmc+IGRpc3QobCwgdSk7CgogICAgICAgIGhpc3RvW0ZpcnN0TnVtYmVyKGRpc3QoZ2VuKSldKys7CgogICAgfQoKICAgIGludCBtYXggPSAwOwogICAgZm9yIChpbnQgaSA9IDA7IGkgPCAxMDsgKytpKQogICAgICAgIGlmIChtYXggPCBoaXN0b1tpXSkgbWF4ID0gaGlzdG9baV07CgogICAgZm9yIChpbnQgaSA9IDA7IGkgPCAxMDsgKytpKQogICAgICAgIHN0ZDo6Y291dCA8PCBpIDw8ICIgIiA8PCBzdGQ6OnN0cmluZyg5MCAqIGhpc3RvW2ldIC8gbWF4LCAnKicpIDw8IHN0ZDo6ZW5kbDsKfQ==