C
const char* elevator(int left, int right, int call) {
int L = left-call;
int R = right-call;
if( L < 0 ) L = -L;
if( R < 0 ) R = -R;
if( L < R ) return "left";
return "right";
}
const char* elevator(int left, int right, int call) {
return abs(call - left) < abs(call - right) ? "left" : "right";
}
C++
char* elevator(int left, int right, int call) {
int L = left-call;
int R = right-call;
if( L < 0 ) L = -L;
if( R < 0 ) R = -R;
if( L < R ) return "left";
return "right";
}
#include <math.h>
char* elevator(int left, int right, int call) {
return (abs(call-left) < abs(call-right)) ? "left" : "right";
}
Kotlin
fun elevator(left: Int, right: Int, call: Int) = if (Math.abs(left-call) < Math.abs(right-call)) "left" else "right"
fun elevator(left: Int, right: Int, call: Int) = when {
right == call -> "right"
left == call -> "left"
(Math.abs(left - call) < Math.abs(right - call)) -> "left"
else -> "right"
}
fun elevator(left: Int, right: Int, call: Int) = when {
right < left && left < call -> "left"
call < left && left < right -> "left"
left == call && right != call -> "left"
else -> "right"
}
Python
def elevator(left, right, call):
if abs(left-call)<abs(right-call):
return "left";
return "right";