Series37. Дано целое число $$K$$, а также $$K$$ наборов ненулевых целых чисел. Каждый набор содержит не менее двух элементов, признаком его завершения является число 0. Найти количество наборов, элементы которых возрастают или убывают.
Решение, считаются только строго возрастающие и убывающие наборы:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
program Series37; var K,Ki,A,A1,Count:Integer; CheckUP,CheckDown:Boolean; begin Write('K: '); Readln(K); Count:=0; for Ki:=1 to K do begin Write('A: '); Readln(A); CheckUp:=True; CheckDown:=True; repeat A1:=A; Write('A: '); Readln(A); if (A1>=A) and (A<>0) then CheckUp:=False; if (A1<=A) and (A<>0) then CheckDown:=False; until A=0; Writeln('---'); If CheckUP xor CheckDown then Count:=Count+1; end; Writeln(Count); end. |
Решение, набор из одинаковых чисел (например 1 1 1 0) считается возрастающим и убывающим:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
program Series37; var K,Ki,A,A1,Count:Integer; CheckUP,CheckDown:Boolean; begin Write('K: '); Readln(K); Count:=0; for Ki:=1 to K do begin Write('A: '); Readln(A); CheckUp:=True; CheckDown:=True; repeat A1:=A; Write('A: '); Readln(A); if (A1>A) and (A<>0) then CheckUp:=False; if (A1<A) and (A<>0) then CheckDown:=False; until A=0; Writeln('---'); If CheckUP or CheckDown then Count:=Count+1; end; Writeln(Count); end. |
Другие задачи из раздела Series можно посмотреть здесь.
Здесь, один вопрос — в наборе 2,3…одинаковых элемента подряд, считается ли этот набор возрастающим или убывающим? K=1 A={1, 2, 3, 3, 3, 3, 0}
Сюда же. Случай с K=1 A={ 3, 3, 3, 3, 0} тоже пройдет?
Когда неравенство не строгое, то есть когда элемент равняется или больше предыдущего, последовательность называется монотонно возрастающей.
Если последовательность «возрастающая», значит неравенство строгое, то есть текущий элемент строго больше предыдущего.
Все верно. В задаче речь о возрастающей(строго взрастающей), соответственно убывающей последовательностях. Сейчас , для K=1, A={ 3, 3, 3, 3, 0}, ответ: — 1.Это ошибка.
Только хотел написать про xor)). Актуально здесь и для Series38
в 38 там ситуация немного другая… покрайней мере в моём решении.. там 3 варианта поэтому конструкция получается сложнее…
Может
и при повторах чисел — в слив
Осознал
исправил:
Было:
Стало: