#include <iostream>
#include <chrono>
#include <limits>
using namespace std;
using namespace std::chrono;
bool func_errcode(int const& val) {
if(val == 100000000) return true;
else return false;
}
void func_exception(int & val) {
if(val == 100000003) val = 10; //throw(true);
}
int main() {
int i = 0;
auto t1 = high_resolution_clock::now();
for(i = 0; i <= 100000001; ++i) {
if(func_errcode(i)) break;
}
auto t2 = high_resolution_clock::now();
std::cout << i << " Return error code: " << duration_cast<duration<double>>(t2 - t1).count() << " sec" << std::endl;
t1 = high_resolution_clock::now();
//try
{
for(i = 0; i <= 100000001; ++i) {
func_exception(i);
}
}
//catch(...)
{}
t2 = high_resolution_clock::now();
std::cout << i << " Exception catch: " << duration_cast<duration<double>>(t2 - t1).count() << " sec" << std::endl;
int b; cin >> b;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8Y2hyb25vPgojaW5jbHVkZSA8bGltaXRzPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwp1c2luZyBuYW1lc3BhY2Ugc3RkOjpjaHJvbm87Cgpib29sIGZ1bmNfZXJyY29kZShpbnQgY29uc3QmIHZhbCkgewoJaWYodmFsID09IDEwMDAwMDAwMCkgcmV0dXJuIHRydWU7CgllbHNlIHJldHVybiBmYWxzZTsKfQoKdm9pZCBmdW5jX2V4Y2VwdGlvbihpbnQgJiB2YWwpIHsKCWlmKHZhbCA9PSAxMDAwMDAwMDMpIHZhbCA9IDEwOyAvL3Rocm93KHRydWUpOwp9CgoKaW50IG1haW4oKSB7CglpbnQgaSA9IDA7CgoJYXV0byB0MSA9IGhpZ2hfcmVzb2x1dGlvbl9jbG9jazo6bm93KCk7Cglmb3IoaSA9IDA7IGkgPD0gMTAwMDAwMDAxOyArK2kpIHsKCQlpZihmdW5jX2VycmNvZGUoaSkpIGJyZWFrOwoJfQoJYXV0byB0MiA9IGhpZ2hfcmVzb2x1dGlvbl9jbG9jazo6bm93KCk7CglzdGQ6OmNvdXQgPDwgaSA8PCAiIFJldHVybiBlcnJvciBjb2RlOiAiIDw8IGR1cmF0aW9uX2Nhc3Q8ZHVyYXRpb248ZG91YmxlPj4odDIgLSB0MSkuY291bnQoKSA8PCAiIHNlYyIgPDwgc3RkOjplbmRsOwoJCgkKCXQxID0gaGlnaF9yZXNvbHV0aW9uX2Nsb2NrOjpub3coKTsKCS8vdHJ5IAoJewoJCWZvcihpID0gMDsgaSA8PSAxMDAwMDAwMDE7ICsraSkgewoJCQlmdW5jX2V4Y2VwdGlvbihpKTsKCQl9Cgl9IAoJLy9jYXRjaCguLi4pCgl7fQoJdDIgPSBoaWdoX3Jlc29sdXRpb25fY2xvY2s6Om5vdygpOwoJc3RkOjpjb3V0IDw8IGkgPDwgIiBFeGNlcHRpb24gY2F0Y2g6ICIgPDwgZHVyYXRpb25fY2FzdDxkdXJhdGlvbjxkb3VibGU+Pih0MiAtIHQxKS5jb3VudCgpIDw8ICIgc2VjIiA8PCBzdGQ6OmVuZGw7CgkKCWludCBiOyBjaW4gPj4gYjsKCXJldHVybiAwOwp9