#c 11
#c 11
Вопрос:
Ниже приведен мой код-
#include<iostream>
using namespace std;
int triplet(int a[],int N)
{ int i,count=0;
for(i=0;i<N-2;i )
{ if(a[i 2]=a[i 1] a[i])
count ;
}
if(count!=0)
cout<<count<<" ";
else
cout<<-1;
}
int swap(int a[],int N)
{ for(int i=0;i<N-1;i )
{if(a[i]>a[i 1])
{
int t=a[i];
a[i]=a[i 1];
a[i 1]=t;
}} triplet(a,N);
}
int main() {
int T,N,a[100],i,j,k;
cin>>T;
for(i=0;i<T;i )
{cin>>N;
for(j=0;j<N;j )
cin>>a[j];
swap(a,N);
}}
я хочу получить вывод только по этой логике.Мой вывод получается как 2 и 1 вместо 2 и -1.
кто-нибудь, пожалуйста, может мне помочь, где я ошибаюсь с подсчетом.
ввод-
2 // нет тестовых примеров
4/размер массива
1 5 3 2/ массив
3//размер массива
3 2 7// массив
вывод = 2,-1 (-1, потому что ни одно из чисел не суммируется ни с одним из массива
Комментарии:
1.
if(a[i 2]=a[i 1] a[i])
Это условие почти всегда выполняется.=
для присвоения;==
для сравнения.2. Пожалуйста, разместите ссылку на сайт, где вы прочитали этот вопрос. Без этого ответа, скорее всего, не будет