#include <iostream>
#include <map>
const int MY_RAND_MAX = 102;
int TrulyUniformRand()
{
static int i = 0;
if (i == MY_RAND_MAX)
i = 0;
return i++;
}
int main()
{
std::map<int,int> m;
int min=0,max=10;
for (int i=0; i<1000; ++i)
m[min + ((double)TrulyUniformRand()/(double)MY_RAND_MAX)*(max-min)]++;
for (auto & i : m)
std::cout << i.first << " : " << i.second << '\n';
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8bWFwPgoKY29uc3QgaW50IE1ZX1JBTkRfTUFYID0gMTAyOwppbnQgVHJ1bHlVbmlmb3JtUmFuZCgpCnsKICAgIHN0YXRpYyBpbnQgaSA9IDA7CiAgICBpZiAoaSA9PSBNWV9SQU5EX01BWCkKICAgICAgICBpID0gMDsKICAgIHJldHVybiBpKys7Cn0KCmludCBtYWluKCkKewogICAgc3RkOjptYXA8aW50LGludD4gbTsKICAgIGludCBtaW49MCxtYXg9MTA7CiAgICBmb3IgKGludCBpPTA7IGk8MTAwMDsgKytpKQogICAgICAgIG1bbWluICsgKChkb3VibGUpVHJ1bHlVbmlmb3JtUmFuZCgpLyhkb3VibGUpTVlfUkFORF9NQVgpKihtYXgtbWluKV0rKzsKICAgIGZvciAoYXV0byAmIGkgOiBtKQogICAgICAgIHN0ZDo6Y291dCA8PCBpLmZpcnN0IDw8ICIgOiAiIDw8IGkuc2Vjb25kIDw8ICdcbic7ICAgIAp9