1 PROGRAM EEEEEEEEEEEEEE(INPUT,OUTPUT);
5 VAR N,I,FIRST,LAST,NUMBEROFDIGITS,
6 CARRY,DIGIT,POWER: INTEGER;
7 A,S: ARRAY[1..501] OF INTEGER;
9 BEGIN READ(NUMBEROFDIGITS);
10 FIRST := 1; LAST := NUMBEROFDIGITS DIV 6 + 1;
12 A[1] := 500000; S[1] := 500000;
14 BEGIN A[I] := 0; S[I] := 0 END;
18 FOR I := FIRST TO LAST DO
20 DIGIT := CARRY*BASE + A[I];
24 IF A[FIRST] = 0 THEN FIRST := FIRST + 1;
28 WHILE (FIRST<=I) OR (CARRY<>0) DO
30 DIGIT := S[I] + A[I] + CARRY; CARRY := 0;
31 IF DIGIT >= BASE THEN BEGIN
32 DIGIT := DIGIT - BASE;
43 DIGIT := S[I]; POWER := BASE;
44 REPEAT POWER := POWER DIV 10;
45 WRITE(DIGIT DIV POWER :1);
46 DIGIT := DIGIT MOD POWER
48 IF I MOD 12 = 0 THEN BEGIN WRITELN; WRITE(" ":6) END