25 lines
780 B
Java
25 lines
780 B
Java
package cat.hack3.codingtests.marsrover;
|
|
|
|
public class MapIncrementalPositionResolver {
|
|
|
|
private final int firstPositionInMap;
|
|
private final int incrementUnit;
|
|
|
|
public MapIncrementalPositionResolver(int firstPositionInMap, int incrementUnit) {
|
|
this.firstPositionInMap = firstPositionInMap;
|
|
this.incrementUnit = incrementUnit;
|
|
}
|
|
|
|
int getIncrementedPosition(int currentPosition, int threshold) {
|
|
return currentPosition + incrementUnit > threshold
|
|
? firstPositionInMap
|
|
: ++currentPosition;
|
|
}
|
|
|
|
int getDecrementedPosition(int currentPosition, int threshold) {
|
|
return currentPosition - incrementUnit < firstPositionInMap
|
|
? threshold
|
|
: --currentPosition;
|
|
}
|
|
}
|