Professional Documents
Culture Documents
ΤΕΛΙΚΟ ΜΑΘΗΜΑ 2009
ΤΕΛΙΚΟ ΜΑΘΗΜΑ 2009
(
) SOS .
, ,
... ...,
.
, ,
,
.
.
.
,
, .
,
,
. ,
. .
.
, .
.
( )
.
.
,
.
,
.
...
.
.
.
1 ( 40
).
()
. ,
, /,
.
10 (), 3 ( ),
, ,
, 6 (
6.7).
.
1
( _, ) (
, _ _,
),
( , ),
,
,
, ,
mod div,
.
2 (.
)
.
( ).
. 2
(
)
( ),
.
.
3
(,
) 2005
(,
).
.
4
,
.
( ).
<>
.
(
)
1
, , , , ,
, , ,
/,
, , , ,
,
, , , , ,
, , , , ,
, ,
,
1.
2. "", "",
" ";
3. ;
4.
;
5. .
6. ;
7. ,
.
8. ,
.
9. ,
10.
;
11.
;
2
, , , , ,
,
,
,
, , ,
, , ,
, ,
,
,
, , , , ,
,
,
,
,
, , , , ,
, , , ,
, / ,
, , , , ,
, , , ,
, , ,
, , ,
, 2 ,
, ,
, , ,
, , , ,
1. .
2.
.
3. ;
4. ;
;
5.
; .
6. ;
;
7.
;
8. ; ;
9. ;
.
10. ;
11. .
;
12. 4 .
13.
;
14. ;
15. , , .
16. ,
_ _
_. .
17. ;
18. / -.
19. 45 37.
/ -.
20. (/ _)
.
3
,
,
,
,
,
,
,
,
, , , , ,
,
,
,
,
+ = , ,
, , , ,
, , , ,
, (LIFO), , , , ,
, (FIFO), , ,
, ( ),
,
,
, bubble
sort ( ), .
1.
.
2. .
;
3. ;
;
4. ,
. LIFO;
5.
;
6. ,
. FIFO;
7.
;
8. () ;
;
.
9. ().
10. ;
11.
( )
4
, ,
, ' ',
.
1.
;
2.
;
3.
;
4.
.
6
, , ,
- (, ,
), , -
, / ,
-
, , ,
/ 3 , ,
- 3 ,
, FORTRAN-
, COBOL- -
,
ALGOL--,
PL/I-,
LISP , PROLOG- ,
BASIC- - - , LOGO-
, PASCAL - -
,
C-U-
pascal - C++ ,
JAVA-SUN - - , visual
programming
(
),
event-driven
programming ( ),
visual C++, visual Basic, 4 (SQL),
(. 128 ), , , , , ,
, ,
, , ,
/top-down , - /,
G - -
- GOTO, -
- (objects) , - - ,
, , , ,
(source) , (object) , , , ,
, ,
(),
, ,
1.
;
2. ;
3. ( )
;
4. ;
5. .
6. FORTRAN;
7. COBOL;
8. ALGOL
;
9. PL/1
;
10. LISP
;
11. PROLOG
;
12. BASIC; T
;
13. PASCAL;
14. JAVA;
;
15. C
;
16.
;
17.
;
18. SQL
;
19. ;
20. ;
;
21.
; ;
22. ;
23. ;
24.
;
25. ;
26. GOTO
;
27. .
;
28.
;
29.
;
30.
;
31. ;
32.
.
33. ;
34. ;
35.
. .
36. ;
37.
;
;
7,8,9
, ,
, , , ,
, , ,
, , (), (), (), (),
(), _(), _(), _(), , ,
, ,
.
1. ; .
2. ;
.
3. ;
4. ;
5. (, , ) ;
6. ;
7. .
8. .
9. ;
10. ;
11. ...
_ ... _;
12. ;
13.
;
14. ;
15. ;
10
, ,
: ) - , )
, ) ,
:
)
,
)
-,
)
) ,
, , , ,
, ,
1. ;
2. ; .
3. ;
4. ;
5. ;
6. ().
7. ().
<>
.
:
.
<>
1
2
_
( )
.
:
1
2 .
<_1>
_1
_ <_2>
_2
.
.
_ <_>
_
<>
_1
_1
_2
_2
_
_
_
<>
_ _
()
.
.
<_1>
<_2>
_1
_2
_
<_3>
_3
_4
_
_
,
.
_ <>
.
,
.
<> <> <> _
_
1 _
1.
. ,
.
. , ,
_.
,
,
.
:
1. .
2.
3.
,
2.
4.
_
:
1. .
2.
3.
,
(
)
2.
4.
_
( ).
_
:
key ,
.
,
.
(*
*)
[100]
i 1 100
[i]
_
[100]
i 1 100
[i]
_
!
!
i 100 1 _ -1 !
[i]
!
_
[5]
! 5
, , [100]
0
1
i 1 100
+ [i]
* [i]
_
/100
/ , /
[100]
[1]
_ 1
[1]
_ 1
i 2 100
[i] >
[i]
_ i
_
[i] <
[i]
_ i
_
_
key
[100] ( )
key
0
i1
i <= 100 =
[i] = key
i
ii+1
_
_
=
( )
0
key
i 1 100
[i] = key
+1
, i
_
_
[100]
i 2 100
j 100 i _ -1
[j-1] > A[j] TOTE
Temp A[j-1]
[j-1] A[j]
A[j] Temp
_
_
_
100
.
[j-1] < A[j] TOTE
i -1 = 99 ,
j
.
Temp (
)
[j-1], A[j]
.
i 2 100
j 100 i _ -1
[j-1] > A[j] TOTE
Temp1 A[j-1]
[j-1] A[j]
A[j] Temp1
Temp2 [j-1]
[j-1] [j]
[j] Temp2
_
_
_
( )
( ). ,
().
( )
i2
i <= 100 =
j 100 i _ -1
[j-1] > A[j] TOTE
Temp A[j-1]
[j-1] A[j]
A[j] Temp
_
_
ii+1
_
.
.
[5, 10]
i 1 5
j 1 10
[i, j]
_
_
[5, 10]
i 1 5 !
j 1 10 !
[i, j]
!
_ !
_
j 1 10 !
[2, j] ! 2
_
i 1 5
!
[i, 3] ! 3
_
, [5, 10]
0
i 1 5
j 1 10
+ [i, j]
_
_
/50
/ [5, 10]
max A[1, 1]
_max 1
_max 1
i 1 5
j 1 10
AN A[i, j] > max TOTE
max A[i, j]
_max i
_max j
_
_
_
, max,
& , _max,
& , _max
/ .
2 3
[5, 10]
0
j 1 10
+ [2, j]
_
1
i 1 5
* [i, 3]
_
2 3
[5, 10]
Max_2 A[2, 1]
j 2 10
AN A[2, j] > Max_2 TOTE
Max_2 A[2, j]
_
_
Min_3 A[1, 3]
i 2 5
AN [i, 3] < Min_3 TOTE
Min_3 [i, 3]
_
_
/
[5, 10]
i 1 5
Sum[i] 0
j 1 10
Sum[i] sum[i] + A[i, j]
_
MO[i] Sum[i] / 10
_
/ [5,
10]
j 1 10
Sum[j] 0
i 1 5
Sum[j] sum[j] + A[i, j]
_
MO[j] Sum[j] / 5
_
[5, 10]
i 1 5
Max[i] A[i, 1]
j 2 10
AN A[i, j] > Max[i] TOTE
Max[i] A[i, j]
_
_
_
.
[5, 10]
j 1 10
Min[j] A[1, j]
i 2 5
AN A[i, j] < Min[j] TOTE
Min[j] A[i, j]
_
_
_
.
[5, 10]
k 1 5
i 2 10
j 10 i _ -1
AN A[k, j-1] > A[k, j] TOTE
Temp A[k, j-1]
[k, j-1] A[k, j]
A[k, j] Temp
_
_
_
_
[5, 10] .
1
=10. ,
1, 2
.
.
1. : ( = )
2. : ('' > '')
3. : '' > '' 10
4. : <= 9 (* > 100 ^2 + ^2 > 100)
5. : (1 1) (2 1)
5
> 0
1
_
_
_
5
_
1
_ <=0
-4
1
<= 0
*
+1
_
-4
1
_
*
+1
_ > 0
2
-4
<= 4
+2
+2
_
2
-4
_
+2
+2
_ > 4
6. : (1 2) (2 2)
_
5 1 _ -1
_
-4 0
*
_
1
.
z,
a 3. (
)
a0
c0
i z 4 _ -2
cc+1
c mod 2 = 1
aa+1
_
_
2
-4 4 _ 2
+2
_
3 ,
, 5 . -2
z, z-2, z-4, z-6, z-8.
: 4<= z-8 < 6. 12<=
z < 14.
6 c
( )
z [12, 16).
i 1
i <= 2
ii+
_
2
3
_
+2
_ > 11
1
:
_
_
5
> 0
1
_
-4
1
_
*
+1
_ > 0
2
-4 4
_ 2
+2
_
0
i 0 100 _ 5
i^3
+
i,
_
1
,
:
mod 10
> 0
-1
+
_
F(X)=(^2+1)/(1) X [-5,7],
F().
)
.
) .
.
, ,
, .
( mod 10) - 1 0 _ -1
+
_
1
,
...
) 1
)
-5
S0
<=7
1 <> 0
F (^2+1)/(-1)
F
SS+F
_
X X+1 !, ,
_
, S
S0
1 5
L 1 7
SS+1
_
_
S
S0
1
<= 5
L1
L <= 7
SS+1
LL+1
_
KK+1
_
S
1
:
0
_
+
_ >
_
_, (
_ _)
.
-5
S0
<=7
F (^2+1)/(-1)
F
S S+ F
X X+1
_
, S
1
:
1
36
2
22
3
29
4
18
5
31
.
J.
.
36
22
29
18
31
<=
+
_
1
36
22
29
18
31
36
22
29
31
18
36
22
31
29
18
36
31
22
29
18
36
31
22
29
18
36
31
22
29
18
36
31
29
22
18
36
31
29
22
18
1
_
<=50
*200
<=100
*180
<=200
*160
*150
_
_
_
<=50
*200
_ <=100
*180
_ <=200
*160
*150
_
<= 50
*200
<= 100
*180
<= 200
*160
*150
_
200
1,
2 3. ,
,
(s1, s2 s3) .
:
S1 0
S2 0
S3 0
<= 0
0
<= 5
5
<= 10
10
100
_
1
:
i1
s1 0
s2 0
s3 0
(i > 200)
= 1
s1 s1 + 1
_ = 2
s2 s2 + 1
_ = 3
s3 s3 + 1
_
ii+1
_
s1,s2,s3
1
;
(1)
_
10
i 1 3
10
_
_ = 0
(2)
,,
>
/(2*)
_
(1) :
0
. _
( )
1: 2
2.
.
(2) :
0
0 .
: (>) (0)
2: 1
2.
1
;
(1)
6
_
2
_ ( > 0)
(3)
(2)
_
1
-1
_ ( = 0)
(4)
4
4
-1
_
0
4
1
_
3: 2 ,
1.
1
45
90
180
360
720
1440
(2) 1
(3) 0
(4)
1
(_).
_
,
= 5
< 10
Summary
S+
Subtract
SX-Y
_
+1
3
+5
_
,
= 5 < 10
Summary
S+
+1
3
_ =5 >=10
Subtract
SXY
+1
3
+5
_
1
1
2. 45 37
.
1, 2
.
45
180
+1440
1665
: 1, 2, SUM
SUM 0
1, 2
2>0
2 D 2=1
SUM SUM + M1
TE_
1 2*1
2 2 DIV 2
_
SUM
_ _
(1) 1
2
37
18
9
4
2
1
1
1, 2 / .
;
_(1, 2):
: 1, 2, SUM
SUM 0
2>0
2 D 2=1
SUM SUM + M1
TE_
1 2*1
2 2 DIV 2
_
_ SUM
_
_(1, 2, SUM)
: 1, 2, SUM
SUM 0
2>0
2 D 2=1
SUM SUM + M1
TE_
1 2*1
2 2 DIV 2
_
_
1
(
, , )
: 1, 2,
10
2
1, 2
(1 = 0) (2 = 0)
0
_ (1 > 0 2 > 0) (1 < 0 2 < 0)
1 _ (1)
2 _ (2)
_(1, 2)
1 _ (1)
2 _ (2)
(-1)*_(1, 2)
_
: ,
_
;
2
,
:
I
12
6
6
6
6
Y
7
8
9
10
Z
0
-9
-11
J
12
9
6
:
_
( )
(
!!).
...
( ,
)
!!
. .
mod div. ! div
, mod ! ,
... div divide.
: 1)
, 2) / (mod,
div), 3) .
2
:
_
0
1
2
i 2 9 _ 3
+i
8
j 1
+1
_
*j
_
_
, ,
_
i
2
2
2
5
5
5
5
5
5
5
5
8
0
2
2
2
7
7
7
7
7
7
7
7
15
1
1
2
3
3
4
5
6
7
8
9
10
10
2
2
2
2
2
2
2
2
2
2
2
2
14
J
1
2
2
1
2
3
4
5
6
7
7
: 15, 10 14
X 16
i 12
(i >= 10) (X > i)
X X/2 + i mod 2
i i div 2
Y i + X div i
j 12 i 3
YY+1
ZX-Y
X Z div Y
_
_
16
8
0
-1
-1
:
! !
!
, , .
/. /
. ...
! , , .
.
/ .
...
. !!!
.
--
.
,
.
,
.
,
.
... ...
.
!
.
.
,
.
(),
.
.
2
:
: , ,
8
-4
2
_
__ (, , )
2* 5
+1
,
11
_ <=
_
_ -1
[]<[-1]
TEMP []
[] [-1]
[-1] TEMP
_
_
_
_
__ (X, Y, Z)
: , ,
+
,
_
.
1 :
-4
1
:
-2
-4
-2
-1
2 :
2
:
:
3 :
1)
.
-1
)
, 50
. 15 22.
0 20.
) .
:
(x,y):
: x,y
x > y
xx3
_
x
_
(x,y,z,p)
: x,y,z
: p
z _(x * y)
p T_P(z+8)*2
_
2
)
.
(, )
: [50], TEMP
: , ,
2) :
_1
: ,,
:
5
1
(,)
,
(,,,)
,
(,)
,
_
(, , ):
: [50],
: , ,
0
1
[] =
+1
_
_
_
)
.
-1.
1)
50
),
.
50
( ),
.
.
2)
: 1[50], 2[50],
: I, 1, 2, 1, 2
1 15
1 1
_
1[]
_ 1[]>0 1[]<=20
_
2 22
1 2
_
2[]
MEX_OTOY 2[I]>0 KAI 2[I]<=20
_
(1, 1)
(2, 2)
<> -1
1 (1, 1, )
2 (2, 2, )
1, 2
12
_
_
: , ,
8
-4
2
_
__ (, , )
2* 5
+1
,
_ <=
_
: ,
,
(, ) >=
_
_
(, ):
: , ,
+2
3
*2
^ 2 ( + )
_
1. _
.
2.
_.
3. .
1. _ (, , )
: , , , t, t,
t + 2
t 3
t * t 2
^ 2 (t + t)
_
2. _II
: , ,
,
_ (, , )
>=
_
_ _II
3. _II
,
t + 2
t 3
t * t 2
^ 2 (t + t)
>=
_
_II
2
:
(i)
__ (X, Y, Z)
: , ,
+
,
_
(ii)
_2
: , ,
3
13
2
, ,
_2 (, )
, ,
_2 (, )
, ,
_ _2
_2 (1, 2)
: 1, 2
1 1 DIV 2
2 2 ^ 3
_
(iii) _3
: ,
1
16
_
(, )
+
,
_ < 3
_ _3
(1, 2) :
: 1, 2,
1 _ (1)
2 _ (2)
2 DIV 1
_
2
.
.
<1>
1
<2>
2
<1>
1
<2>
2
13
3
5
_
4
5
_
4
_
5
_
:
.
5 .
: <2>
2 3, ,
5 .
4 <2>
.
2
. ;
.
: 3%
. 6%
. 10% .
.
(, ):
:
:
<= 2 TOTE
* * 0.03
_ = 3
2 * * 0.03 + * 0.06
_
i1
S0
(i <= 5)
S S + (-1) ^ i * i ^2
ii+1
_
S
_
( ...
.. ...
)
_
S0
i 1 5
S S + (-1) ^ i * i ^ 2
_
S
_
2
, 10 ,
1 10 : 15, 3, 0, 5, 16, 2,
17, 8, 19, 1 :
5
:
S=-15.
S:
-1
-6
10
-15
i:
i 1 9 _ 2
k ((i + 10) mod 10) + 1
[i] [k]
i, k, A[i], A[k]
_
i, k, A[i], A[k]
14
.
.
.
1 .
2 .
3 .
4 .
5 .
10
15
16
17
19
16
17
19
16
17
19
17
19
19
:
1, 2, 3, 3
3, 4, 5, 5
5, 6, 2, 2
7, 8, 8, 8
9, 10, 1, 1
__1
// , , , key //
Done
0
0
i 1
(i<=) (done=)
j1
(j<=) (done=)
[i,j]=key
Done
i
j
j j+1
_
_
i i+1
_
done=
, key
,
,
_
__1
3
:
2
:
3
11
18
22
44
57
.
A) .. 16,
.
.
B)
,
,
.
A) 4 16
18 ( ). ,
.
B)
__
// , table, key //
done
position 0
i1
(done = ) (i <= )
(table[i] = key)
done
position i
_ (table[i] > key)
done
ii+1
_
_
// done, position //
__
2
0,4 (
)
( ):
1 20 0,05
20 100 0,07
20
100 0,1
100
12%
( `)
15% .
:
= ( + ) *
:
()
: 0
, 1 .
() ,
.
_
" "
" 0 1 "
<= 20
* 0.05
_ <= 100
20 * 0.05 + ( 20) * 0.07
15
_
" = ", ,""
" = ", , ""
" = ", ,""
_
3
:
,
25 .
,
20. ,
800, 3%
.
:
() .
() .
()
.
_
_
_ >=0
<=2
0
_ <=20
(18)*25
18*25 + (-20)*20
_
>800
*0.97
_
" ",
_
3
1 6x8
) 2 3x8, ) 2 6x4
1 3
1 8
[,] [,]
_
_
1 3
1 8
[,] [+3,]
_
_
1 6
1 4
[,] [,]
_
_
1 6
1 4
[,] [,+4]
_
_
_
3
8
,
.
:
)
)
(.. 3 )
: [8,7], , , SUM[7]
: i, j, _, _
! !
8x7, , !
! !
, !
, . !
, !
(_) .
i 1 8
[i,1]
_ 1
j 2 7
[i,j]<
[i,j]
_ j
_
_
_
_
! , !
, !
( ) !
. !
SUM, !
, 7.
j 1 7
SUM[j] 0
i 1 8
SUM[j] SUM[j]+A[i,j]
_
TE_
!
!,
!, SUM,
! (_)
. , ! -
!, _
!.
SUM[1]
MEA_MAX 1
i 2 7
SUM[i]>
SUM[i]
_ i
TE_AN
_
_
_
3
,
xN,
, .
16
: ()
.
[i, j], i > j.
()
.
[i, j], i
< j.
()
.
_
// , //
!
i 1 N
j 1 N ! : j 1 i 1
! <> 0,
([i, j] <> 0) (i > j)
_
_
_
!
i 1 N
j 1 N ! : j i + 1
! <> 0,
([i, j] <> 0) (i < j)
_
_
_
( = ) ( = )
" "
_ ( = )
" "
_ ( = )
" "
" "
_
_
3
15
30 .
30 ,
.
:
()
()
15 .
: [30], temp1
: i, j
: [30], temp2
i 1 30
[i], [i]
_
! !
i 2 30
j 30 i _ 1
[j-1]<[j]
temp1 [j-1]
[j-1] [j]
[j] temp1
temp2 [j-1]
[j-1] [j]
[j] temp2
_
_
_
j 1 15
[j]
_
_
3
4
15 ,
() 4*15
( , ),
)
)
.
: , j,
: [4, 15]
1 4
j 1 15
_
[,j]
_ [,j] = [,j] =
[,j] =
_
_
()
()
,
_
()
: , , j
: [4, 15]
0
1 4
j 1 15
[,j] =
+ 1
_ [,j] =
+ 2
+ 3
_
_
_
,
_
():
: , , j, [4], ,
: [4, 15]
1 4
0
j 1 15
[,j] =
+ 1
_
_
[]
_
[1]
1
2 4
[] >
[]
_
17
_
!
_
3
100
200 . :
()
( ).
.
()
:
13
4
(/)
115
100
90
80
(
) 6
75
.
()
.
3
_ 0
_ 0
S0
,
(_+<=100) (_+<=200)
_ _ +
_ _ +
+ > 6
( + ) * 75
<= 3
1 115 *
1 115 * 3 + ( - 3) * 90
_
<= 3
2 100 *
2 100 * 3 + ( - 3) * 80
_
1 + 2
_
:,
S S +
,
_
:, S
_ 100 - _
_ 200 - _
:, _
:, _
3
4
.
8 .
(1)
10 .
0 10.
:
,
.
(8)
.
.
,
, (10)
.
.
ATHENS_2004
I 1 8
[I]
J 1 10
_
[I,J]
_ B[I,J] >= 0 KAI [I,J] <= 10
_
_
1 8
[] [,1] !
[] [,1] !
J 2 10
[,J] > MAX[I]
MAX[I] B[I,J]
_
[I,J] < MIN[I] TOTE
MIN[I] B[I,J]
_
_
[] [] []
_
1 8
SUM[I] 0
J O 1 10
SUM[I] SUM[I] + B[I,J]
_
[] (SUM[I] MAX[I] MIN[I]) / 8
_
2 8
J 8 _ -1
[j-1] < [j]
TEMP1 [j-1]
[j-1] [j]
[j] TEMP1
TEMP2 [j-1]
[j-1] [j]
[j] TEMP2
TEMP3 ON[j-1]
ON[j-1] ON[j]
ON[j] TEMP3
_ [j-1] = [j]
[j-1] > [j]
TEMP2 [j-1]
[j-1] [j]
[j] TEMP2
TEMP3 ON[j-1]
ON[j-1] ON[j]
ON[j] TEMP3
_
_
_
_
/, [1], : , [1]
_ ATHENS_2004
4
,
[200]
200
[200,3]
.
18
12 , 6
3 .
, i
i .
:
() 2 .
() .
() 3 , 2
1 ,
.
: i, j, [200,3], , _,
[200], TEMP
: [200], TEMP1
i 1 200
[i]
j 1 3
[i,j]
_
_
[1,1]
_ 1
i 2 200
[i,1] >
[i,1]
_ i
_
_
, [_], , ,
i 1 200
[i] [i,1] * 3 + [i,2] * 2 + [i,3]
_
i 2 200
j 200 i _ -1
[j-1] < [j]
TEMP [j-1]
[j-1] [j]
[j] TEMP
TEMP1 [j-1]
[j-1] [j]
[j] TEMP1
_
_
_
i 1 3
[i], [i]
_
_
4
[50]
[50, 6] .
(, ).
,
. ,
, .
i 1 50
[i]
j 1 6
[i, j]
_
_
i 1 50
[i] [i, 1]
[i] 1
j 2 6
[i, j] > MAX[i]
[i] [i, j]
[i] j
_
_
_
i 2 50
j 50 i _ -1
[j-1] < MAX[j]
[j-1] , [j]
[j-1] , [j]
[j-1] , [j]
_ [j-1] = MAX[j]
[j-1] > [j]
[j-1] , [j]
[j-1] , [j]
_
_
_
_
i1
[i]=[1] [i]=[1] i50
: , [i]
ii+1
_
ki
[k]=[i] [k]=[i] k50
: , [k]
kk+1
_
mk
[m]=[k] [m]=[k] m50
: , [m]
mm+1
_
4
_ _
.
:
()
, ,
.
()
.
//_, _//
i 1 _
[i]
_
j 1 _
[j]
_
0
0
i 1 _
j1
j <= _ =
[j] = [i]
jj+1
_
_
=
+1
[] [i]
+1
[] [i]
_
_
i 2
j i _ -1
[j-1] > [j]
TEMP [j-1]
19
[j-1] [j]
[j] TEMP
_
_
_
4
35
.
.
30.
:
()
200
200 1000
1000
%
0
1.5
4
:
1. :
)
.
)
.
.
) .
2. ,
.
3.
600 .
, .
4.
.
i 1 35
[i], [i]
S0
> 0
S S +
_
S <= 200
bonus 0
_ S <= 1000
bonus (S 200) * 1.5/100
O[]
_
i 2 35
j 35 i _ 1
[j1] < [j]
[j1], [j]
[j1], [j]
_
_
_
I1
0
( = ) (i <= 35)
[i] = [1]
+ 1
ii+1
_
_
i + 1
( =) (i <= 35)
[i] = [ + 1]
[i]
ii+1
_
_
4
.
7000 ,
.
:
() .
()
.
()
.
()
( ) .
() [4],
.
i 1 7000
!
[i]
j 1 12
[i, j]
_
_
i 1 7000
!
[i] 0
j 1 12
[i] [i] + [i, j]
_
_
max [1]
!
1
i 2 7000
[i] > max
max [i]
i
_
_
[]
i 1 7000
!
_ 0
j 1 12
[i, j] <> 0
_ _ + 1
_
_
[i], "", _, ""
_
j 1 12
!
sum[j] 0
i 1 7000
sum[j] sum[j] + [i, j]
_
_
20
0
j 1 10 _ 3
+ 1
[] sum[j] + sum[j+1] + sum[j+2]
[]
_
4
1
20 40 .
:
)
[20,40]
.
-1 .
-1
25.
.
) [20]
.
) 40 ,
.
)
.
)
.
.
.
! ,
i 1 20
O[i]
j 1 40
[i, j]
_
_
!
0
j 1 40
! max
max [1, j]
i 2 20
[i, j] > max
max [i, j]
_
_
! max;
0
i 1 20
[i, j] = max
+1
_
_
= 1 ! 1 max
+ 1
_
_
!
i 1 20
j 1 40
[i, j] = -1
_
_
= !
[i]
_
_
!
_
!
done
pos 0
i1
done = i <= 20
[i] = _
done
pos i
ii+1
_
_
done =
! [40]
i 1 40
[I] i
_
! pos
i 2 40
j 40 i _ -1
[pos, j-1] < [pos, j]
[pos, j-1], [pos, j]
[j-1], [j]
_
_
_
0
j 1 6 ! 6
[pos, j] <> -1
+1
_
_
= 6
! 6
6
j 1 6
[j]
_
" 6 "
_
" "
_
4
:
() 100
.
()
( 18)
.
()
20%, 12%
6 ,
.
: 1, 2, 3, 4, 5, 6
[6].
= 2007
= 0.2
= 0.12
: , [100], [100], ,
[6], [100],
: [100]
1 100
[]
[]
[] []
_
0
1 100
[] >= 18
21
+ 1
, [],
_
_
,
* (1 )
1 _()
_
[]
_ [] >= 1 [] <= 6
_
1 6
!
[] 0
_
1
[[]] [[]] + 1
_
1 6
, , , [],
_
_
:
i 1 6
[i] 0
_
i 1
j 1 6
[i] = j
[j] [j] + 1
_
_
_
4
.
:
() 20
1981 2005 (25 )
[20]
[25]
[20,25]
()
20 ,
()
.
_4
: [20,25], temp1
E: k, i, j, POS, [25], temp2
: [20],
: DONE
!
j 1 25
[j]
_
i 1 20
[i]
j 1 25
[i, j]
_
_
' '
i1
DONE
POS 0
(i <= 20) (DONE = )
[i] =
DONE
POS i
ii+1
T_
_
DONE =
' : ',
k 2 25
j 25 k 1
[POS, j-1] < [POS, j]
Temp1 [POS, j-1]
[POS, j-1] [POS, j]
[POS, j] emp1
Temp2 [j-1]
[j-1] [j]
[j] emp2
_
_
_
j 1 25
[POS, j], [j]
_
_
_
4
Eurobasket ( )
:
[6]
[6,6]
[6,6]
(
)
:
.
, .
.
5
6
3
8
1
7
4
6
8
8
9
2
9
2
.
. .
.. 5
7 .
22
.
,
.
1 6
[],[]
_
_ 4
2
1 .
,
10 . 250
.
: ,j,[6,6],[6],[6],Help
:[6],[6,6],Help2
1 6
,
[]
_
1 6
j 1 6
(>j) TOTE
,[],,[j]
[,j]
,[],,[j]
[,j]
_
_
_
1 6
[] 0
!
[] 0
!
_
1 6
j 1 6
(>j) TOTE
[,j] =
[] [] + 2
[j] [j] + 1
[] [] + [,j]
[j] [j] - [,j]
_
[,j] =
[] [] + 1
[j] [j] + 2
[] [] - [,j]
[j] [j] + [,j]
_
_
_
_
2 30
j 30 _ 1
[j-1] < [j] TOTE
Help [j]
[j] [j-1]
[j-1] Help
Help [j]
[j] [j-1]
[j-1] Help
Help2 ON[j]
ON[j] ON[j-1]
ON[j-1] Help2
_
([j-1]=[j]) ([j-1]<[j])
Help [j]
[j] [j-1]
[j-1] Help
Help2 ON[j]
ON[j] ON[j-1]
ON[j-1] Help2
_
([j-1]=[j]) ([j-1]=[j])
& ([j-1]>[j])
Help2 ON[j]
ON[j] ON[j-1]
ON[j-1] Help2
_
_
_
,
. [10],
. , [250,2],
:
, ''
'' . ,
[250]
.
1
2
3
10
.............
.............
1
2
3
4
5
6
250
.............
.............
.............
60
45
128
36
30
60
....
....
....
32
( ).
( sec)
/ sec
1-200
201-500
500
1-250
251-600
600
0,025
0,020
0,015
0,030
0,025
0,020
:
() [10] [250,2],
'' '',
[250] .
() [10]
.
()
.
.
.
() ,
, .
, .
: , [250]
: [250], [10], TEMP1
: [10], [250,2], , TEMP2
I 1 10
[]
_
1 250
_
[]
_ [] > 0
[,1]
_
[,2]
_ [,2]='' [,2]= ''
_
23
1 250
[,2]=''
[] <= 200
[] 0.025 * []
_ [] <= 500
[] 0.025*200 + 0.020*([] 200)
[] 0.025*200 + 0.020*300 +
&
0.015*([] 500)
_
[] <= 250
[] 0.030*[]
_ [] <= 600
[] 0.030*250 + 0.025*([] 250)
[] 0.030*250 + 0.025*350 +
&
0.020*([] 600)
_
_
_
1 10
[] 0
J 1 250
[J,1] = ON[I]
[] [] + [J]
_
_
_
(, )
2 10
J 10 -1
[J-1]<[J]
TEMP1 [J-1]
[J-1] [J]
[J] TEMP1
TEMP2 [J-1]
[J-1] [J]
[J] TEMP2
_ [J-1]=[J]
[J-1]>[J]
TEMP2 [J-1]
[J-1] [J]
[J] TEMP2
_
_
_
_
1 1 10
[], []
_
_
(, )
: ,
:
: [10],
1
0
<= 10 =
[]=
+1
_
_
=
' '
[]
_
_
4
12:00
20 . :
() 20
.
()
, .
.
()
.
: pos, i, j
: [20, 31],
: [20], _
: done
i 1 20 !
[i]
_
i 1 20
j 1 31
[i, j]
_
_
i 1 20 !
_max (i, )
[i],
_
_ ! ,
done
pos 0
i1
(i <= 20) (done = )
AN ([i] = _) TOTE
done
pos i
ii+1
_
_
(done = )
_max (pos, )
[pos],
' '
_
_
_max (, ):
: j
: [20, 31], max
max [, 1] !
j 2 31
([, j] > max)
max [, j]
_
_
_max max
_
4
15
.
15
24
15
15
15
:
[5,3]
5 3
.
6 ,
88
.
43
68
31
36
59
18
64
88
28
118
79
50
110
137
:
()
()
:
.
() 2
()
[15,15]
1 15
.
.
()
.
.
:
.
.
_4
1 15
[]
_
1 15
1 1
_
[, ]
_ [, ] > 0
_
_
i2
j1
3 15
1 1
[, ] < [i ,j]
i
j
_
_
_
[i], [j]
min _(, 1)
1
2 15
AN _(, ) < min
min _(, )
_
_
[]
_
_(, ) :
: , , [15, 15], ,
0
1 1
+ [, ]
_
+1 15
+ [, ]
_
_ / 14
_
43
68
31
36
59
18
64
88
28
118
79
50
110
137
, = 4
4
.
50x5
: 1 , 2 ,
,
30x5 : 1
, 2 , ,
.
25
:
)
) 80x5
.
)
.
,
( 2 )
.
1 50
J 1 5
[,J]
_
_
1 30
J 1 5
[,J]
_
_
! 4 5
1 50
([,4], B[I,5])
_
!
(,,)
!
2 80
J 80 _ -1
[J-1, 1] > [J, 1] TOTE
1 5
([J-1, K], [J, K])
_
_AN
_
_
1 80
J 1 5
[,J]
_
_
_
(, )
: X , Y, TEMP
TEMP X
XY
Y TEMP
_
(, , )
1 50
J 1 5
[,J] [,J]
_
_
1 30
J 1 5
[+50, J] [,J]
_
_
_
4
:
)
10 (
).
) 4 10
: i)
ii) 10 iii)
(1) (0) iv)
(0 ),
() -1.
)
.
)
10 : i)
0,1 ii) (
6) 0,0015 /sec iii) 0,0007 /sec iv) 8
)
.
1 10
[], []
_
!
1
_[], _[], [], []
_[]<> -1
+1
_[], _[], [], []
_
-1
!
0
1
<=10 =
[]=
+1
_
_
=
_ 0
_ 0
1
[]=_[]
_ _ +[]
[]=0
_ _ + 1
_
_
_
_, _
_
!
1 10
[] 8
J 1
[J] =1 TOTE
_[J]DIV10^9=6 TOTE
[] []+[J] * 0,0015
[] []+[J] * 0,0007
_AN
26
[] []+ 0,1
_
_
_
!
2 10
J 10 _ -1
[J-1]> [J] TOTE
P ON[J-1]
ON[J-1] ON[J]
ON[J] TEMP
P TH[J-1]
[J-1] [J]
[J] TEMP
P1 [J-1]
[J-1] [J]
[J] TEMP1
_AN
_
_
1 10
[], []
_
_
!!! !!!
27