#include <iostream>
#include <random>
int main()
{
std::random_device rd;
std::mt19937 gen(rd());
std::uniform_int_distribution<> dis(0, 1);
unsigned const trials = 100000;
unsigned survive = 0;
unsigned trials_that_happened = 0;
for(unsigned i = 0; i < trials; ++i)
{
int clear1 = dis(gen);
int clear2 = dis(gen);
if (clear1 )
if(clear1 && clear2) //both female, one didn't croak
{
continue;
}
if(clear1 || clear2) //at least one was female
{
++survive;
}
++trials_that_happened;
}
std::cout << survive << std::endl;
std::cout << (survive/1.0/trials_that_happened)*100.0 << "%" << std::endl;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8cmFuZG9tPgogCmludCBtYWluKCkKewoJc3RkOjpyYW5kb21fZGV2aWNlIHJkOwoJc3RkOjptdDE5OTM3IGdlbihyZCgpKTsKCXN0ZDo6dW5pZm9ybV9pbnRfZGlzdHJpYnV0aW9uPD4gZGlzKDAsIDEpOwogCgl1bnNpZ25lZCBjb25zdCB0cmlhbHMgPSAxMDAwMDA7Cgl1bnNpZ25lZCBzdXJ2aXZlID0gMDsKCXVuc2lnbmVkIHRyaWFsc190aGF0X2hhcHBlbmVkID0gMDsKCWZvcih1bnNpZ25lZCBpID0gMDsgaSA8IHRyaWFsczsgKytpKQoJewoJCWludCBjbGVhcjEgPSBkaXMoZ2VuKTsKCQlpbnQgY2xlYXIyID0gZGlzKGdlbik7CgkJaWYgKGNsZWFyMSApCgkJaWYoY2xlYXIxICYmIGNsZWFyMikgLy9ib3RoIGZlbWFsZSwgb25lIGRpZG4ndCBjcm9hawoJCXsKCQkJY29udGludWU7CgkJfQoJCWlmKGNsZWFyMSB8fCBjbGVhcjIpIC8vYXQgbGVhc3Qgb25lIHdhcyBmZW1hbGUKCQl7CgkJCSsrc3Vydml2ZTsKCQl9CgkJKyt0cmlhbHNfdGhhdF9oYXBwZW5lZDsKCX0KCXN0ZDo6Y291dCA8PCBzdXJ2aXZlIDw8IHN0ZDo6ZW5kbDsKCXN0ZDo6Y291dCA8PCAoc3Vydml2ZS8xLjAvdHJpYWxzX3RoYXRfaGFwcGVuZWQpKjEwMC4wIDw8ICIlIiA8PCBzdGQ6OmVuZGw7Cn0=