vitaly.ylativ
BAN USERstatic int f(int n) {
int total = 0;
int digit = 0;
while (true) {
int digitValue = (int) Math.pow(10, digit);
int div = n / (digitValue * 10);
int rem = n % (digitValue * 10);
int divContribution = div * digitValue;
int remContribution = 0;
if (rem >= 2 * digitValue) {
remContribution = Math.min(digitValue, rem - 2 * digitValue + 1);
}
int totalContribution = divContribution + remContribution;
total += totalContribution;
if (totalContribution == 0) {
break;
}
digit++;
}
return total;
}
static int f(int n) {
int total = 0;
int digit = 0;
while (true) {
int digitValue = (int) Math.pow(10, digit);
int div = n / (digitValue * 10);
int rem = n % (digitValue * 10);
int divContribution = div * digitValue;
int remContribution = 0;
if (rem >= 2 * digitValue) {
remContribution = Math.min(digitValue, rem - 2 * digitValue + 1);
}
int totalContribution = divContribution + remContribution;
total += totalContribution;
if (totalContribution == 0) {
break;
}
digit++;
}
return total;
}
- vitaly.ylativ July 18, 2016