class Test{
public static long collatz() {
long res = 0;
long n = 1;
long count = 0;
long largestCount = 0;
long printCount = 0;
for (long k = 1; k <= 1000000; k++) {
n = k;
//System.out.println("n: " + n + "; k: " + k + " ; count : " + count);
printCount++;
while (n != 1) {
//System.out.println("n: " + n + "; k: " + k + " ; count : " + count);
printCount++;
if ((n % 2) == 0) {
n = n / 2;
count = count + 1;
//System.out.println("n: " + n + "; k: " + k + " ; count : " + count);
printCount++;
}
else {
n = (3 * n) + 1;
count = count + 1;
//System.out.println("n: " + n + "; k: " + k + " ; count : " + count);
printCount++;
}
if (count > largestCount) {
largestCount = count;
}
}
//System.out.println("count:" + count + " n: " + n + " k: " + k);
printCount++;
}
res = largestCount;
System.
out.
println("result: " + res
); System.
out.
println("print : " + printCount
); return res;
}
public static void main
(String[] args
){ collatz();
}
}
Y2xhc3MgVGVzdHsKICAgIHB1YmxpYyBzdGF0aWMgbG9uZyBjb2xsYXR6KCkgewoKICAgICAgICBsb25nIHJlcyA9IDA7CiAgICAgICAgbG9uZyBuID0gMTsKICAgICAgICBsb25nIGNvdW50ID0gMDsKICAgICAgICBsb25nIGxhcmdlc3RDb3VudCA9IDA7CiAgICAgICAgbG9uZyBwcmludENvdW50ID0gMDsKCiAgICAgICAgZm9yIChsb25nIGsgPSAxOyBrIDw9IDEwMDAwMDA7IGsrKykgewoKICAgICAgICAgICAgbiA9IGs7CiAgICAgICAgICAgIC8vU3lzdGVtLm91dC5wcmludGxuKCJuOiAiICsgbiArICI7IGs6ICIgKyBrICsgIiA7IGNvdW50IDogIiArIGNvdW50KTsKICAgICAgICAgICAgcHJpbnRDb3VudCsrOwoKICAgICAgICAgICAgd2hpbGUgKG4gIT0gMSkgewogICAgICAgICAgICAgICAgLy9TeXN0ZW0ub3V0LnByaW50bG4oIm46ICIgKyBuICsgIjsgazogIiArIGsgKyAiIDsgY291bnQgOiAiICsgY291bnQpOwogICAgICAgICAgICAgICAgcHJpbnRDb3VudCsrOwoKICAgICAgICAgICAgICAgIGlmICgobiAlIDIpID09IDApIHsKICAgICAgICAgICAgICAgICAgICBuID0gbiAvIDI7CiAgICAgICAgICAgICAgICAgICAgY291bnQgPSBjb3VudCArIDE7CiAgICAgICAgICAgICAgICAgICAgLy9TeXN0ZW0ub3V0LnByaW50bG4oIm46ICIgKyBuICsgIjsgazogIiArIGsgKyAiIDsgY291bnQgOiAiICsgY291bnQpOwogICAgICAgICAgICAgICAgICAgIHByaW50Q291bnQrKzsKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBlbHNlIHsKICAgICAgICAgICAgICAgICAgICBuID0gKDMgKiBuKSArIDE7CiAgICAgICAgICAgICAgICAgICAgY291bnQgPSBjb3VudCArIDE7CiAgICAgICAgICAgICAgICAgICAgLy9TeXN0ZW0ub3V0LnByaW50bG4oIm46ICIgKyBuICsgIjsgazogIiArIGsgKyAiIDsgY291bnQgOiAiICsgY291bnQpOwogICAgICAgICAgICAgICAgICAgIHByaW50Q291bnQrKzsKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBpZiAoY291bnQgPiBsYXJnZXN0Q291bnQpIHsKICAgICAgICAgICAgICAgICAgICBsYXJnZXN0Q291bnQgPSBjb3VudDsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgICAvL1N5c3RlbS5vdXQucHJpbnRsbigiY291bnQ6IiArIGNvdW50ICsgIiBuOiAiICsgbiArICIgazogIiArIGspOwogICAgICAgICAgICBwcmludENvdW50Kys7CiAgICAgICAgfQoKICAgICAgICByZXMgPSBsYXJnZXN0Q291bnQ7CiAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKCJyZXN1bHQ6ICIgKyByZXMpOwogICAgICAgIFN5c3RlbS5vdXQucHJpbnRsbigicHJpbnQgOiAiICsgcHJpbnRDb3VudCk7CiAgICAgICAgcmV0dXJuIHJlczsKCiAgICB9CgogICAgcHVibGljIHN0YXRpYyB2b2lkIG1haW4oU3RyaW5nW10gYXJncyl7CiAgICAgICAgY29sbGF0eigpOwogICAgfQoKfQo=