using System;
using System.Linq;
using System.Collections.Generic;
using System.Threading;
using System.Diagnostics;
namespace A
{
class Program
{
private const int N = 1000000;
private static void Main(string[] args)
{
long trash = 0;
const int a1 = 0, a2 = 1, b = 1;
var result0 = 0.0;
var result1 = 0.0;
for (int i = 0; i < N; i++)
{
var sw = Stopwatch.StartNew();
int c = a1 == 0 ? b : a1;
int d = a2 == 0 ? b : a2;
sw.Stop();
trash += c + d;
result0 += (double)sw.ElapsedTicks;
var sw2 = Stopwatch.StartNew();
c = a1 - a1 * a1 * b + b;
d = a2 - a2 * a2 * b + b;
sw2.Stop();
trash += c + d;
result1 += (double)sw2.ElapsedTicks;
}
Console.WriteLine(trash);
Console.WriteLine("res1 = {0}", result0/N);
Console.WriteLine("res2 = {0}", result1/N);
} // your code goes here
}
}
dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uTGlucTsKdXNpbmcgU3lzdGVtLkNvbGxlY3Rpb25zLkdlbmVyaWM7CnVzaW5nIFN5c3RlbS5UaHJlYWRpbmc7CnVzaW5nIFN5c3RlbS5EaWFnbm9zdGljczsKCm5hbWVzcGFjZSBBCnsKICAgIGNsYXNzIFByb2dyYW0KICAgIHsKICAgICAgICBwcml2YXRlIGNvbnN0IGludCBOID0gMTAwMDAwMDsKCiAgICAgICAgcHJpdmF0ZSBzdGF0aWMgdm9pZCBNYWluKHN0cmluZ1tdIGFyZ3MpCiAgICAgICAgewogICAgICAgICAgICBsb25nIHRyYXNoID0gMDsKICAgICAgICAgICAgY29uc3QgaW50IGExID0gMCwgYTIgPSAxLCBiID0gMTsKICAgICAgICAgICAgdmFyIHJlc3VsdDAgPSAwLjA7CiAgICAgICAgICAgIHZhciByZXN1bHQxID0gMC4wOwogICAgICAgICAgICBmb3IgKGludCBpID0gMDsgaSA8IE47IGkrKykKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgdmFyIHN3ID0gU3RvcHdhdGNoLlN0YXJ0TmV3KCk7CiAgICAgICAgICAgICAgICBpbnQgYyA9IGExID09IDAgPyBiIDogYTE7CiAgICAgICAgICAgICAgICBpbnQgZCA9IGEyID09IDAgPyBiIDogYTI7CiAgICAgICAgICAgICAgICBzdy5TdG9wKCk7CiAgICAgICAgICAgICAgICB0cmFzaCArPSBjICsgZDsKICAgICAgICAgICAgICAgIHJlc3VsdDAgKz0gKGRvdWJsZSlzdy5FbGFwc2VkVGlja3M7CgogICAgICAgICAgICAgICAgdmFyIHN3MiA9IFN0b3B3YXRjaC5TdGFydE5ldygpOwogICAgICAgICAgICAgICAgYyA9IGExIC0gYTEgKiBhMSAqIGIgKyBiOwogICAgICAgICAgICAgICAgZCA9IGEyIC0gYTIgKiBhMiAqIGIgKyBiOwogICAgICAgICAgICAgICAgc3cyLlN0b3AoKTsKICAgICAgICAgICAgICAgIHRyYXNoICs9IGMgKyBkOwogICAgICAgICAgICAgICAgcmVzdWx0MSArPSAoZG91YmxlKXN3Mi5FbGFwc2VkVGlja3M7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgQ29uc29sZS5Xcml0ZUxpbmUodHJhc2gpOwogICAgICAgICAgICBDb25zb2xlLldyaXRlTGluZSgicmVzMSA9IHswfSIsIHJlc3VsdDAvTik7CiAgICAgICAgICAgIENvbnNvbGUuV3JpdGVMaW5lKCJyZXMyID0gezB9IiwgcmVzdWx0MS9OKTsKICAgICAgICAgICAKICAgICAgICB9CS8vIHlvdXIgY29kZSBnb2VzIGhlcmUKCX0KfQ==