import java.util.*; public class Main { public static void main(String[] args){ Scanner sc = new Scanner(System.in); String[] s = sc.nextLine().split(" "); int[] v = new int[s.length];//原始数据 int[] v1 = new int[s.length];//记录某天之前的最低价格 int[] v2 = new int[s.length];//记录某天之后的最高价格 int[] r = new int[s.length - 1];//各分界点的最高利润 for(int i = 0; i < v.length; ++i) v[i] = Integer.valueOf(s[i]); v1[0] = v[0]; v2[s.length - 1] = v[s.length - 1]; for(int i = 1; i < v.length - 1; ++i){ if(v[i] < v1[i - 1]) v1[i] = v[i]; else v1[i] = v1[i - 1]; } for(int i = v.length - 2; i > 0; --i){ if(v[i] > v2[i + 1]) v2[i] = v[i]; else v2[i] = v2[i + 1]; } for(int i = 0; i < r.length; ++i){ r[i] = v2[i + 1] - v1[i];//后半段的最高价格,减去前半段的最低价格 } Arrays.sort(r); int temp = r[r.length - 1]; if(temp < 0) temp = 0;//全赔就一次也不买 System.out.println(temp); } }