INT FUNC Max(INT a,b) IF a>b THEN RETURN (a) FI RETURN (b) PROC Main() DEFINE ROWCOUNT="18" INT i,row,len,a,b INT ARRAY rows(ROWCOUNT) INT ARRAY data=[ 55 94 48 95 30 96 77 71 26 67 97 13 76 38 45 07 36 79 16 37 68 48 07 09 18 70 26 06 18 72 79 46 59 79 29 90 20 76 87 11 32 07 07 49 18 27 83 58 35 71 11 25 57 29 85 14 64 36 96 27 11 58 56 92 18 55 02 90 03 60 48 49 41 46 33 36 47 23 92 50 48 02 36 59 42 79 72 20 82 77 42 56 78 38 80 39 75 02 71 66 66 01 03 55 72 44 25 67 84 71 67 11 61 40 57 58 89 40 56 36 85 32 25 85 57 48 84 35 47 62 17 01 01 99 89 52 06 71 28 75 94 48 37 10 23 51 06 48 53 18 74 98 15 27 02 92 23 08 71 76 84 15 52 92 63 81 10 44 10 69 93] row=0 len=1 FOR i=0 TO ROWCOUNT-1 DO rows(i)=row row==+len len==+1 OD row=ROWCOUNT-2 WHILE row>=0 DO len=row+1 FOR i=0 TO len-1 DO a=data(rows(row+1)+i) b=data(rows(row+1)+i+1) data(rows(row)+i)==+Max(a,b) OD row==-1 OD PrintI(data(0)) RETURN