You are on page 1of 7

_

: + - * / div mod ^
: = < >
:

: // //
: // //

- : 1, 2, ,
: 1, 2, ,
: 1, 2, ,






1
_
2
_
()

_ ()

_ ()




_

() _

_ _ ()

1 2 _

_

_

, , ,


_1 = 1

_ =

:

_ :
: + - * / div mod ^
: = <= < >= >
:

: 1, 2, ,
- : 1, 2, ,

() ()
() () ex
() _ ()
_ () _ ()






1
_
2
_
()

_ ()

_ ()




_
() _

_ _ ()
1 2

_
!

&

// , // // , //
 0
1 1
 + [] []  0
_ _
 /
// , // // //

- - ( )

// , // // , //
max  [1] max  [1]
min  [1] min  [1]
2 minp  1
[] > max maxp  1
max  [] 2
_ [] > max
[] < min max  []
min  [] maxp 
_ _
_ [] < min
// max,min // min  []
minp 
_
_
// max,min,maxp,minp //

. [],[]

// , // // ,,, //
1 div 2  1 j  1 k  1
temp  [] j
A[]  A[N+1-] [] < [j]
A[N+1-]  temp [k]  A[]  + 1
_
// A // [k]  [j] j  j + 1
_
k  k + 1
! () (+1-) _
! >
j
[k]  []
k  k + 1
_


[k]  []
k  k + 1
_
_
// //

3
( ) ( )

// ,,key // // ,,key //
 1 found 
found  1
( ) (found = ) [] = key
([] = key) found 
found  " ",pos
pos  _
_
 + 1 found =
_ " "
_ _
(found = )
" ",pos

" "
_

( ) ( )
( ) ( )

// ,,key // // ,,key //
 1  1
found  found 
( ) (found = ) ( ) ([] <= key)
& ([] <= key) [] = key
([] = key) found 
found  " ",
pos  _
 + 1
 + 1 _
_ found =
_ " "
(found = ) _
" ",pos

" "
_


() ( )

// , // // , //
2  2
j _ 1 F 
[j-1] > [j] F =
temp  [j-1] F 
A[j-1]  A[j] j N _ -1
A[j]  temp [j-1] > [j]
_ temp  [j-1]
_ A[j-1]  A[j]
_ A[j]  temp
// // F 
_
_
 + 1
_
// //

& -

// ,, // // ,, //
 0 max  [1,1]
1 min  [1,1]
j 1 1
 + [,j] j 1
_ [,j] > max
_ max  [,j]
 /(*) _
// , // [,j] < min
min  [,j]
_
_
_
// max,min //

- ( ) ( )

// ,, // // ,,,key //
max  [1,1]  1
min  [1,1] found 
min  1 min  1 ( ) (found = )
max  1 max  1 j  1
1 (j M) (found = )
j 1 ([,j] = key)
[,j] > max found 
max  [,j] pos1 
max  pos2  j
max  j
_ j  j + 1
[,j] < min _
min  [,j] _
min   + 1
min  j _
_ (found = )
_ " ",pos1,pos2
_
// max,min,max,max " "
& min,min // _

( )

// ,,M,key //
found 
1
j 1
[,j] = key
found 
" ",,j
_
_
_
found =
" "
_

M - MO / - MO /

// ,, // // ,, //
1 j 1 M
 0  0
j 1 i 1 N
 + [,j]  + [,j]
_ _
 / MO  /
, MO , MO
_ _

/ /

// ,, // // ,, //
1 j 1 M
max  A[,1] max  A[1,j]
j 2 i 2 N
[,j] > max [,j] > max
max  [,j] max  [,j]
_ _
_ _
max max
_ _

B A B
TOY A TOY A

// ,, // // ,, //
1 j 1

j 1 i 1

_ _
[]  [j] 
_ _

6

N*N i
j , (i,j)
:

 i = j (i,i)

 i < j

 i > j

 i + j = N+1 (i, N+1-i)

 i + j < N+1

 i + j > N+1

()

// , // // , //
1  0 1  0
2  0 2  0
1 1
j 1 1  1 + [,]
= j 2  2 + [,+1-]
1  1 + [,j] _
_ // 1,2 //
+j = N+1
2  2 + [,j]
_
_
_
// 1,2 //

() ()

1 -1 j 1 -1
j +1 j+1
[,j] [,j]
_ _
_ _

You might also like