2016 , 2
2 , . . .
2 , .
60%80%, . 24 40 % 60%, 2 10% 30%.
2 ( ).
, 2, 12 .
2016 .
/ | - | - | () | ||||
... | ... | ||||||
3 | |||||||
1.7.2 | 1.1.4 | ||||||
(1015 ) | 1.6.3 | 1.1.5 | |||||
1.5.2 | 1.1.3 | ||||||
(3050 ) | 1.7.3 | 1.1.5 |
2
24
24. 1.
, N, 109, . . ( .)
|
|
DIM N AS LONG INPUT N sum = 0 WHILE N >= 9 N = N \ 10 sum = sum + 1 WEND PRINT sum END | var N: longint; sum: integer; begin readln(N); sum:= 0; while N >= 9 do begin N:= N div 10; sum:= sum + 1; end; writeln(sum); end. |
#include<stdio.h> int main() { long int N; int sum; scanf("%ld", &N); sum = 0; while (N >= 9) { N = N / 10; sum = sum + 1; } printf("%d", sum); } | N, sum N sum:= 0 N >= 9 N:= div(N, 10) sum:= sum + 1 sum |
.
1. , 584.
2. , .
3. (
). ( ), , .
, , , , . , .
( , ) | |
1. 2. 2. , 9, 9. [ .] 3. 1 , . ( ) : 1) while (N >= 1) do while (N > 0) do while (N >= 0) do . 2) sum:= 1 while (N > 9) do while (N >= 10) do | |
! . . 1. , . 2. , . 3. ( ), , ; . 3 . ! . ( ) , | |
, 2 3 , . 1. . 2. , , | |
3 |
24. 2
|
|
, N, 109, . . ( .)
DIM N AS LONG INPUT N sum = 1 WHILE N > 1 N = N \ 10 sum = sum + 1 WEND PRINT sum END | var N: longint; sum: integer; begin readln(N); sum:= 1; while N > 1 do begin N:= N div 10; sum:= sum + 1; end; writeln(sum); end. |
#include<stdio.h> int main() { long int N; int sum; scanf("%ld", &N); sum = 1; while (N > 1) { N = N /10; sum = sum + 1; } printf("%d", sum); } | N, sum N sum:= 1 N > 1 N:= div(N, 10) sum:= sum + 1 sum |
.
1. , 938?
2. , .
3. (
). ( ), , .
, , , , . , .
( , ) | |
1. 4. 2. , 1, 1. [ .] 3. 1 , . : 1) while (N > 9) do 2) sum:= 0 while (N >= 1) do while (N > 0) do while (N >= 0) do . 3) while (N >= 1) do while (N > 0) do sum-1 | |
! . . 1. , . 2. , . 3. ( ), , ; . 3 . ! . ( ) , | |
, 2 3 , . 1. . 2. , , | |
3 |
24. 1a.
, N, 109, . . ( .)
DIM N AS LONG INPUT N min_digit = 9 WHILE N >= 10 digit = N MOD 10 IF digit < min_digit THEN min_digit = digit END IF N = N \ 10 WEND PRINT digit END | var N: longint; digit, min_digit: integer; begin readln(N); min_digit:= 9; while N >= 10 do begin digit:= N mod 10; if digit < min_digit then min_digit:= digit; N:= N div 10; end; writeln(digit); end. |
#include<stdio.h> int main() { long int N; int digit, min_digit; scanf("%ld", &N); min_digit = 9; while (N >= 10) { digit = N % 10; if (digit < min_digit) min_digit = digit; N = N / 10; } printf("%d", digit); } | N, digit, min_digit N min_digit:= 9 N >= 10 digit:= mod(N, 10) digit < min_digit min_digit:= digit N:= div(N, 10) digit |
.
|
|
1. , 547.
2. , , .
3. ( ). :
1) , ;
2) , , .
, , , , . , .
( , ) | ||
. . 1. 4. 2. 10<=N<=109, . , 11 9899. 3. . . . . : while N >= 10 do : while (N >= 1) while (N > 0) while (N > 1) while (N >= 0) 3. . digit, min_digit. . : writeln(digit); digit min_digit | ||
! : 1) , ; 2) , ; 3) ; 4) . . 2) () , , , , , , . 3) 4) , : ) ; ) , . | ||
, | |
, 3 . : ) . ; ) . | |
, 2 3 . | |
, 1, 2 3 . | |
3 |
|
|
24. 2a.
, N, 109, . . ( .)
DIM N AS LONG INPUT N min_digit = 0 WHILE N > 0 digit = N MOD 10 IF digit < min_digit THEN min_digit = digit END IF N = N \ 10 WEND PRINT digit END | var N: longint; digit, min_digit: integer; begin readln(N); min_digit:= 0; while N > 0 do begin digit:= N mod 10; if digit < min_digit then min_digit:= digit; N:= N div 10; end; writeln(digit); end. |
#include<stdio.h> int main() { long int N; int digit, min_digit; scanf("%ld", &N); min_digit = 0; while (N > 0) { digit = N % 10; if (digit < min_digit) min_digit = digit; N = N / 10; } printf("%d", digit); } | N, digit, min_digit N min_digit:= 0 N > 0 digit:= mod(N, 10) digit < min_digit min_digit:= digit N:= div(N, 10) digit |
.
1. , 862.
2. , , .
3. ( ). :
1) , ;
2) , , .
, , , , . , .
( , ) | ||
. . 1. 8. 2. 1<=N<=109, . , 1, 22 789. 3. . ( min_digit). : min_digit:= 0; : min_digit:= 9; , 9. . digit, min_digit. . : writeln(digit); digit min_digit | ||
! : 1) , ; 2) , ; 3) ; 4) . . 2) () , , , , , , . 3) 4) , : ) ; ) , . | ||
, | |
, 3 . : ) . ; ) . | |
, 2 3 . | |
, 1, 2 3 . | |
3 |
|
|
25
25. 1.
30 . 150 200 . , 175 . , . , . , . , , .
( ), . ( , Borland Pascal 7.0) -. , (, , ).
| |||||||||||||||||||||||||||||||
25. 2.
30 . 0 1000. , , . , . , . , , .
( ), . ( , Borland Pascal 7.0) -. , (, , ).
|
26
26. 1.
, , . . , . . , 15 , 16 30 . , , .
, 22. , , , 22 .
S , 1 ≤ S ≤ 21.
, , . , , .
. .
- ) S ? .
) S, , . .
- S, , () , () , , .
S .
- S, , , , .
S . , ( ). , , .
( , ) | ||||||||||||||||||
( , )
) ( ), S =10 . 11 20 . .
. ( ) . ( ).
.1. , . >> , .
| ||||||||||||||||||
3 . . ( . ). , , , , . , ) ). ) , , , . ) , , , .. , , . , (1) , ( ), (2) , ; (3) , , . , , , , , . , , , . , , , , , , , . , . | ||||||||||||||||||
. . , (. ). | ||||||||||||||||||
, 3 , . 1. 3 . 2. . 3. ; 2 3 S. | ||||||||||||||||||
, 3 2 , . 1. . 2. S, . 3. S. 4. S. | ||||||||||||||||||
, 3, 2 1 | ||||||||||||||||||
3 |
26. 2.
, , . . , . 1 3 . , 15 , 16 45 . , , .
, 30. , , , 30 .
S , 1 ≤ S ≤ 29.
, , . , , .
. .
- ) S ? .
) S, , . .
- S, , () , () , , .
S .
- S, , , , .
S . , ( ). , , .
( , ) | ||||||||||||||||||
) ( ), S =9 . 10 27 . .
. ( ) . ( ).
.1. , . >> , .
| ||||||||||||||||||
3 . . ( . ). , , , , . , ) ). ) , , , . ) , , , .. , , . , (1) , ( ), (2) , ; (3) , , . , , , , , . , , , . , , , , , , , . , . | ||||||||||||||||||
. . , (. ). | ||||||||||||||||||
, 3 , . 1. 3 . 2. . 3. ; 2 3 S. | ||||||||||||||||||
, 3 2 , . 1. . 2. S, . 3. S. 4. S. | ||||||||||||||||||
, 3, 2 1 | ||||||||||||||||||
3 |
27
27. 1.
.
2015.
10 000. 1000. , , .
- , 7 . , 1.
, :
. .
. , , 0 .
, .
. ,
, . .
, .
2 .
. , , ( ).
, N, .. N k k .
, , , N 1 .
.
, .
, , 4 .
, , , 3 .
! , .
. N . ,
N > 7. N .
:
, 1, .
:
( , ) |
( , . 4). , , , . k, k = 8, , . , , k 7. , , . , , 7 , . 7 , 7 . 7 . , , . , . , . |
1. . |
s = 7 | amax = 1001 | N N a | [0:s-1] | s [0:s-1] | s i | s , ; := amax | ; := amax | i 1 s := imin(, a) mod(a,2) = 0 := imin(,a) [mod(i, s)]:= [mod(i, s)]:= = amax*amax | i s+1 N mod(a,2)=0 := a * [mod(i, s)] < amax := a * [mod(i, s)] := amax*amax; := imin(, ) := imin(, a) mod(a,2) = 0 := imin(,a) [mod(i, s)]:= [mod(i, s)]:= = amax*amax :=-1 |
. , . , . ( ), , . N, 4 . |
2. . , |
const s = 7; { } amax = 1001; { } var N: integer; a: array[1..s] of integer; { s } a_: integer; { } ma: integer; { s } me: integer; { s } mp: integer; { } p: integer; i, j: integer; begin readln(N); { s } for i:=1 to s do readln(a[i]); { , } ma:= amax; me:= amax; mp:=amax*amax; for i:= s + 1 to N do begin readln(a_); if a[1] < ma then ma:= a[1]; if (a[1] mod 2 = 0) and (a[1] < me) then me:= a[1]; if a_ mod 2 = 0 then p:= a_ * ma else if me < amax then p:= a_ * me else p:= amax* amax; if (p < mp) then mp:= p; { } for j:= 1 to s - 1 do a[j]:= a[j + 1]; a[s]:= a_ end; if mp = amax*amax then mp:=-1; writeln(mp) end. |
( ) ( ), , , N. . ( ) 3 . |
3. . , |
const s = 7; { } amax = 1001; { } var N, p, i: integer; a: array[1..10000] of integer; { } ma: integer; { s } me: integer; { s } mp: integer; { } begin readln(N); { } for i:=1 to N do readln(a[i]); ma:= amax; me:= amax; mp:= amax*amax; for i:= s + 1 to N do begin if a[i-s] < ma then ma:= a[i-s]; if (a[i-s] mod 2 = 0) and (a[i-s] < me) then me:= a[i-s]; if a[i] mod 2 = 0 then p:= a[i] * ma else if me < amax then p:= a[i] * me else p:= amax * amax; if (p < mp) then mp:= p end; if mp = amax*amax then mp:= -1; writeln(mp) end. |
, . (. 4) . ( ) , . , . 2 . |
4. . , | |
const s = 7; { } var N: integer; a: array[1..10000] of integer; { } mp: integer; { } i, j: integer; begin readln(N); { } for i:=1 to N do readln(a[i]); mp:= 1000 * 1000 + 1; for i:= 1 to N-s do begin for j:= i+s to N do begin if (a[i]*a[j] mod 2 = 0) and (a[i]*a[j] < mp) then mp:= a[i]*a[j] end; end; if mp = 1000 * 1000 + 1 then mp:= -1; writeln(mp) end. | |
. 1. ( ). , . , . , , . 2. , , , , . 2.1. . . 2.2. , . . 2.3. ; , . ( ) , . 2.4. . 2.12.3. 2.5. , , 3 4 . , , . , , , . ! , . . 1. . , , . 2. (, , ) ( ) ( ), 2 , . 3. . 2.12.5 - , | |
. , , 4. (. 4 ). , 3 | |
, 2 . , . , . 1 , | |
, 1 2 | |
2 | |
, , .. , , . (, STL C++) , , 1 ( |