#include <iostream>
int main()
{
// currVal is the number we're counting; we'll read new values into val
int currVal = 0, val = 0;
// read first number and ensure that we have data to process
if (std::cin >> currVal) {
int cnt = 1; // store the count for the current value we're processing
while (std::cin >> val) { // read the remaining numbers
if (val == currVal) // if the values are the same
++cnt; // add 1 to cnt
else { // otherwise, print the count for the previous value
std::cout << currVal << " occurs "
<< cnt << " times" << std::endl;
currVal = val; // remember the new value
cnt = 1; // reset the counter
}
} // while loop ends here
// remember to print the count for the last value in the file
std::cout << currVal << " occurs " << cnt << " times" << std::endl;
} // outermost if statement ends here
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgoKaW50IG1haW4oKQp7CgkvLyBjdXJyVmFsIGlzIHRoZSBudW1iZXIgd2UncmUgY291bnRpbmc7IHdlJ2xsIHJlYWQgbmV3IHZhbHVlcyBpbnRvIHZhbAoJaW50IGN1cnJWYWwgPSAwLCB2YWwgPSAwOwoJLy8gcmVhZCBmaXJzdCBudW1iZXIgYW5kIGVuc3VyZSB0aGF0IHdlIGhhdmUgZGF0YSB0byBwcm9jZXNzCglpZiAoc3RkOjpjaW4gPj4gY3VyclZhbCkgewoJCWludCBjbnQgPSAxOyAvLyBzdG9yZSB0aGUgY291bnQgZm9yIHRoZSBjdXJyZW50IHZhbHVlIHdlJ3JlIHByb2Nlc3NpbmcKCQl3aGlsZSAoc3RkOjpjaW4gPj4gdmFsKSB7IC8vIHJlYWQgdGhlIHJlbWFpbmluZyBudW1iZXJzCgkJCWlmICh2YWwgPT0gY3VyclZhbCkgLy8gaWYgdGhlIHZhbHVlcyBhcmUgdGhlIHNhbWUKCQkJCSsrY250OyAvLyBhZGQgMSB0byBjbnQKCQkJZWxzZSB7IC8vIG90aGVyd2lzZSwgcHJpbnQgdGhlIGNvdW50IGZvciB0aGUgcHJldmlvdXMgdmFsdWUKCQkJCXN0ZDo6Y291dCA8PCBjdXJyVmFsIDw8ICIgb2NjdXJzICIKCQkJCQk8PCBjbnQgPDwgIiB0aW1lcyIgPDwgc3RkOjplbmRsOwoJCQkJY3VyclZhbCA9IHZhbDsgLy8gcmVtZW1iZXIgdGhlIG5ldyB2YWx1ZQoJCQkJY250ID0gMTsgLy8gcmVzZXQgdGhlIGNvdW50ZXIKCQkJfQoJCX0gLy8gd2hpbGUgbG9vcCBlbmRzIGhlcmUKCQkgIC8vIHJlbWVtYmVyIHRvIHByaW50IHRoZSBjb3VudCBmb3IgdGhlIGxhc3QgdmFsdWUgaW4gdGhlIGZpbGUKCQlzdGQ6OmNvdXQgPDwgY3VyclZhbCA8PCAiIG9jY3VycyAiIDw8IGNudCA8PCAiIHRpbWVzIiA8PCBzdGQ6OmVuZGw7Cgl9IC8vIG91dGVybW9zdCBpZiBzdGF0ZW1lbnQgZW5kcyBoZXJlCglyZXR1cm4gMDsKfQ==