xxxxxxxxxx
import std.algorithm;
import std.range;
auto arg_max(alias f, Range)(Range r) {
return r.map!f.maxIndex;
}
auto range_max(alias f, T)(T a, T b) {
return arg_max!f(iota(min(a,b), max(a,b)));
}
auto go(T)(T a, T b) {
import std.math : abs;
return range_max!(x => -abs(x-3))(a, b);
}
int main(string[] args) {
auto a = cast(long) args.length - 11; // -10
auto b = cast(long) args.length + 9; // 10
return cast(int) go(a, b) & 0x1000;
}