class DailyProgrammingKolakoski
{
public static void main
(String []args
) {
int f = 100000000;//changed for CompileBot int f = Integer.parseInt(JOptionPane.showInputDialog(""));
int [] s = new int [f];
int n = 0;
int c2 = 0;
int c1 = 0;
long now
= System.
currentTimeMillis();
for(int l = 0; l <f;)
if(s[n]!=0)
{
if((n+1)%2 == 0)
for(int loop2 = 0; loop2 < s[n];loop2++)
{
s[l] = 2;
l++;
c2++;
if(l>=f)
break;
}
else
for(int loop2 = 0; loop2 < s[n];loop2++)
{
s[l] = 1;
l++;
c1++;
if(l>=f)
break;
}
n++;
}
else
{
s[n] = n+1;
if((n+1)%2 == 0)
for(int loop2 = 0; loop2 < s[n];loop2++)
{
s[l] = 2;
l++;
c2++;
if(l>=f)
break;
}
else
for(int loop2 = 0; loop2 < s[n];loop2++)
{
s[l] = 1;
l++;
c1++;
if(l>=f)
break;
}
n++;
}
System.
out.
println(c1
+":"+c2
); System.
out.
println("Time taken: "+(System.
currentTimeMillis()-now
)+"ms"); }
}
IGNsYXNzIERhaWx5UHJvZ3JhbW1pbmdLb2xha29za2kKewogICAgcHVibGljIHN0YXRpYyB2b2lkIG1haW4gKFN0cmluZyBbXWFyZ3MpCiAgICB7CiAgICAgICAgaW50IGYgPSAxMDAwMDAwMDA7Ly9jaGFuZ2VkIGZvciBDb21waWxlQm90IGludCBmID0gSW50ZWdlci5wYXJzZUludChKT3B0aW9uUGFuZS5zaG93SW5wdXREaWFsb2coIiIpKTsKICAgICAgICBpbnQgW10gcyA9IG5ldyBpbnQgW2ZdOwogICAgICAgIGludCBuID0gMDsKICAgICAgICAKICAgICAgICBpbnQgYzIgPSAwOwogICAgICAgIGludCBjMSA9IDA7CiAgICAgICAgCiAgICAgICAgbG9uZyBub3cgPSBTeXN0ZW0uY3VycmVudFRpbWVNaWxsaXMoKTsKICAgICAgICAKICAgICAgICBmb3IoaW50IGwgPSAwOyBsIDxmOykKICAgICAgICAgICAgaWYoc1tuXSE9MCkKICAgICAgICAgICAgewogICAgICAgICAgICBpZigobisxKSUyID09IDApCiAgICAgICAgICAgICAgICAgIGZvcihpbnQgbG9vcDIgPSAwOyBsb29wMiA8IHNbbl07bG9vcDIrKykKICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgc1tsXSA9IDI7CiAgICAgICAgICAgICAgICAgICAgICBsKys7CiAgICAgICAgICAgICAgICAgICAgICBjMisrOwogICAgICAgICAgICAgICAgICAgICAgaWYobD49ZikKICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICBlbHNlCiAgICAgICAgICAgICAgICAgICAgZm9yKGludCBsb29wMiA9IDA7IGxvb3AyIDwgc1tuXTtsb29wMisrKQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICBzW2xdID0gMTsKICAgICAgICAgICAgICAgICAgICAgICBsKys7CiAgICAgICAgICAgICAgICAgICAgICAgYzErKzsKICAgICAgICAgICAgICAgICAgICAgIGlmKGw+PWYpCiAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgICAgfSAgICAgCiAgICAgICAgICAgIG4rKzsKICAgICAgICAgICAgfQogICAgICAgICAgICBlbHNlCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHNbbl0gPSBuKzE7CiAgICAgICAgICAgIGlmKChuKzEpJTIgPT0gMCkKICAgICAgICAgICAgICAgICAgZm9yKGludCBsb29wMiA9IDA7IGxvb3AyIDwgc1tuXTtsb29wMisrKQogICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICBzW2xdID0gMjsKICAgICAgICAgICAgICAgICAgICAgIGwrKzsKICAgICAgICAgICAgICAgICAgICAgIGMyKys7CiAgICAgICAgICAgICAgICAgICAgICBpZihsPj1mKQogICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgIGVsc2UKICAgICAgICAgICAgICAgICAgICBmb3IoaW50IGxvb3AyID0gMDsgbG9vcDIgPCBzW25dO2xvb3AyKyspCiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgIHNbbF0gPSAxOwogICAgICAgICAgICAgICAgICAgICAgIGwrKzsKICAgICAgICAgICAgICAgICAgICAgICBjMSsrOwogICAgICAgICAgICAgICAgICAgICAgaWYobD49ZikKICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgICAgICB9ICAgICAKICAgICAgICAgICAgbisrOwogICAgICAgICAgICB9CiAgICAgICAgCiAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKGMxKyI6IitjMik7CiAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKCJUaW1lIHRha2VuOiAiKyhTeXN0ZW0uY3VycmVudFRpbWVNaWxsaXMoKS1ub3cpKyJtcyIpOwogICAgICAgIFN5c3RlbS5leGl0KDApOwogICAgfQp9Cg==