Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 09.02.2014, 15:24   #1
uzer2007
Пользователь
 
Регистрация: 16.01.2014
Сообщений: 15
По умолчанию количество подпоследовательностей

Помогите!!!!!!! Пусть задана числовая последовательность, составленная из N целых чисел.Определить количество строго возрастающих подпоследовате льностей данной последовательности.
uzer2007 вне форума Ответить с цитированием
Старый 09.02.2014, 15:40   #2
Vanta11a
Lawful Evil
Участник клуба
 
Аватар для Vanta11a
 
Регистрация: 13.05.2008
Сообщений: 1,208
По умолчанию

Последовательность - пусть 2 символа и больше.
Если следующий символ больше предыдущего - +1 к длине последовательности.
Если следующий символ <= предыдущему и длина последовательности >=2, то +1 к числу последовательностей и сброс длины последовательности в 0.
Алгоритм - бесплатен. Поиск багов - бесплатен. Реализация алгоритма - за отдельную плату.
На форуме помогают советами и объясняют, а не пишут на халяву программы, лабы, курсачи и т.д. (c)
Vanta11a вне форума Ответить с цитированием
Старый 09.02.2014, 16:11   #3
uzer2007
Пользователь
 
Регистрация: 16.01.2014
Сообщений: 15
По умолчанию

Очень стесняюсь (стаж программирования 5 месяцев) но не могли бы вы посмотреть мой вариант решения:
k:=n;
for i:=1 to n-1 do
begin
m:=i;
for j:=i to n do begin
m:=i;
if a[j]>a[m] then begin k:=k+1; m:=j; end;end;
uzer2007 вне форума Ответить с цитированием
Старый 10.02.2014, 06:27   #4
Vanta11a
Lawful Evil
Участник клуба
 
Аватар для Vanta11a
 
Регистрация: 13.05.2008
Сообщений: 1,208
По умолчанию

А что приведенный код делает? Для меня он слегка неочевиден
Алгоритм - бесплатен. Поиск багов - бесплатен. Реализация алгоритма - за отдельную плату.
На форуме помогают советами и объясняют, а не пишут на халяву программы, лабы, курсачи и т.д. (c)
Vanta11a вне форума Ответить с цитированием
Старый 10.02.2014, 09:33   #5
uzer2007
Пользователь
 
Регистрация: 16.01.2014
Сообщений: 15
По умолчанию

Код делает следующее: сначала количество равно колву элементов - один элемент это последовательность потом берется число(цикл по i) и сравнивается со следующими числами(цикл по j)как только находится элемент больший увеличивается кол-во найденных послед и сравнение будет идти уже с этим элементом k:=k+1; m:=j;
Я код немного изменил и теперь он выглядит так: var
Код:
var
  a: array [1..1000]  of integer;
  m,i,k,j,n,x:integer;
begin
read(n);
for i:=1 to n do
read(a[i]);k:=n;
for i:=1 to n-1 do
for j:=i+1 to n do
begin m:=i;
for x:=j to n do
if a[x]>a[m] then begin k:=k+1;m:=j;end;end;
write(k);
end.
Но ошибка в нем есть на последовательности 1 4 2 5 вместо правильного ответа 11 у меня 12




___________
Код нужно оформлять по правилам:
тегом [CODE]..[/СODE]
(кнопочка на панели форматирования с решёточкой #)
Не забывайте об этом!

Модератор.

Последний раз редактировалось Serge_Bliznykov; 10.02.2014 в 11:10.
uzer2007 вне форума Ответить с цитированием
Старый 10.02.2014, 09:36   #6
Vanta11a
Lawful Evil
Участник клуба
 
Аватар для Vanta11a
 
Регистрация: 13.05.2008
Сообщений: 1,208
По умолчанию

Цитата:
Но ошибка в нем есть на последовательности 1 4 2 5 вместо правильного ответа 11 у меня 12
Чё? Как это соотносится с:
Цитата:
Определить количество строго возрастающих подпоследовательностей
?
Ответ: никак! Последовательность 1 2 3 4 3 5 6 1 3 6 - ответ - 3. Три возрастающих подпоследовательности, но никак не 12.

Или Вы не то задание привели?
Алгоритм - бесплатен. Поиск багов - бесплатен. Реализация алгоритма - за отдельную плату.
На форуме помогают советами и объясняют, а не пишут на халяву программы, лабы, курсачи и т.д. (c)
Vanta11a вне форума Ответить с цитированием
Старый 10.02.2014, 09:46   #7
uzer2007
Пользователь
 
Регистрация: 16.01.2014
Сообщений: 15
По умолчанию

числа в подпоследовательностях не обязательно должны идти по порядку пдпоследовательности
14
145
12
125
15
45
25, ну и 4 числа(последовательности из 1 числа)
uzer2007 вне форума Ответить с цитированием
Старый 10.02.2014, 09:46   #8
uzer2007
Пользователь
 
Регистрация: 16.01.2014
Сообщений: 15
По умолчанию

http://programmersforum.ru/showthread.php?p=1320442, похожий вопрос
uzer2007 вне форума Ответить с цитированием
Старый 10.02.2014, 09:55   #9
Vanta11a
Lawful Evil
Участник клуба
 
Аватар для Vanta11a
 
Регистрация: 13.05.2008
Сообщений: 1,208
По умолчанию

1 число не может быть последовательностью, следуя здравому смыслу.

Судя по данному подходу, тут может прокатить комбинаторика. Нашел длинную последовательность, знаешь её длину, пусть 5. Тогда 1 раз по 5, 2 х 4, 3 х 3, 4 х 2 - вот все варианты для данного кусочка. И для всех кусков так.
Алгоритм - бесплатен. Поиск багов - бесплатен. Реализация алгоритма - за отдельную плату.
На форуме помогают советами и объясняют, а не пишут на халяву программы, лабы, курсачи и т.д. (c)
Vanta11a вне форума Ответить с цитированием
Старый 11.02.2014, 05:45   #10
009
Пользователь
 
Регистрация: 09.02.2014
Сообщений: 33
По умолчанию

Код:
var
  a,b: array [1..1000]  of integer;
  i,k,j,n:integer;
begin
read(n);
for i:=1 to n do
read(a[i]);
for i:=1 to n do begin
b[i]:=1;
for j:=1 to i-1 do
if a[i]>a[j] then b[i]:=b[i]+b[j];
k:=k+b[i]; 
end;
write(k);
end.
009 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
помогите сделать - программа выводит текст на экран, определяет количество предложений и количество слов (язык С) карен1 Фриланс 4 26.12.2013 21:35
Количество подпоследовательностей в последовательности New man Помощь студентам 0 25.12.2013 20:43
Задана последовательность чисел в формате:сначала количество цифр в числе, потом - цифры числа. Подсчитать количество. Arn1 Помощь студентам 4 03.10.2011 20:03
Подсчитать количество слов и количество букв MDSIQ Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 1 13.11.2010 16:57
количество цифр и количество символов до первой гласной буквы 111111 Общие вопросы C/C++ 2 22.12.2008 12:15