Patrice T
Цитата:
Правильно ли я подхожу к этому вопросу?
Нет, это не так.
sort(A+(j-5),A+j+1);
if(Z[j]==A[j-5])
Вы сортируете часть массива, которая позволяет вам гарантировать, что ни один предыдущий 5 дней не будет ниже сегодняшней цены.
Вы сохраняете 4 теста, но сортировка стоит гораздо больше, чем сохраненные тесты.
Вторичный эффект, сортировка-это изменение цен предыдущих дней.
Вы должны переосмыслить все это.
-----
Научитесь правильно делать отступы в вашем коде, это покажет его структуру, и это поможет чтению и пониманию. Это также помогает выявлять структурные ошибки.
#include<iostream>
#include<algorithm>
using namespace std;
#include<stdio.h>
int main()
{
int t,n[10],i,j,k,A[10000],D[10];
cin>>t;
for(i=0;i<t;++i)
{
D[i]=0;
int Z[100];
cin>>n[i];
for(j=0;j<n[i];++j)
{
cin>>A[j];
}
for(k=0;k<n[i];++k) //copying array
{
Z[k]=A[k];
}
for(j=0;j<n[i];++j)
{
if(350<=A[j]&&A[j]<=750)
{
if(j<5)
{
if(j==0||A[0]>A[j])
{
D[i]++;
}
}
else
{
sort(A+(j-5),A+j+1);
if(Z[j]==A[j-5])
{
D[i]++;
}
}
}
}
}
for(i=0;i<t;++i)
{
cout<<D[i]<<"\n";
}
return 0;
}
Стиль отступа - Википедия[
^]
Профессиональные редакторы программистов имеют эту функцию и другие, такие как сопоставление скобок и подсветка синтаксиса.
Блокнот++ Главная Страница[
^]
личные[
^]
[Обновление]
Цитата:
сэр можете ли вы дать некоторые примеры ввода программы и ожидаемого результата
Не хочу показаться грубым, но это также ваша работа-Создавать примеры входных данных для проверки правильности вашего кода.
750 700 650 600 550
750 350 400 450 500
Цитата:
я понял вашу точку зрения, сэр . значит, я должен использовать вложенный цикл for для сравнения ?
В принципе, да
[no name]
сэр, если какой-либо день из предыдущих 5 дней имеет меньшее значение, чем сегодня, то он не будет удовлетворять этому кодированию if(Z[j]==A[j-5]) . мой подход состоял в том, что я скопировал исходный массив в Z, а затем после того, как я копирую, и это будет верно только в том случае, если сегодняшняя цена ниже, чем цены в последние 5 дней
Patrice T
Как только вы отсортировали первый кусочек а, вы не возвращаетесь к исходному порядку на следующий день, чтобы проверить его.
Таким образом, проблему.