如果你 WA #12 #13 ,有2种可能:
-
你把 maxn 的初始值设置成0了。(如果你是以 a1 为初始值请看第2种可能)
-
读入过程中的 mx = max(a - mi, mx), mi = min(a, mi); 写成了 mi = min(a, mi), mx = max(a - mi, mx); 。
但是
如果第1点改完之后变成70分了,你要看一看你的初始值是不是改成了这样: long long mx = LLONG_MIN, mi = LLONG_MAX ,接近甚至等于 long long 的上限或下限,会爆 long long !
正确的初始值:
const long long INF = 1145141919810;
long long mx = -INF, mi = INF;
这样你差不多就能 AC 了。