Задача 3 Merge Trains
Здравейте ,
Направих следната функция за да merge-на влаковете и да изкарам резултата .
void mergeTrains(std::vector<int> A,std::vector<int> B ){
std::priority_queue<int> Result;
std::stack<char> TrainChar;
for ( int i : A) Result.push(i);
for ( int i : B) Result.push(i);
while (!Result.empty()){
if (std::find(A.begin(), A.end(), Result.top())) TrainChar.push('A');
else TrainChar.push('B');
std::cout << Result.top() << " " ;
Result.pop();
}
}
На този ред обаче ми изкарва грешка - if (std::find(A.begin(), A.end(), Result.top())) TrainChar.push('A');
Merge Trains.cpp|29|error: could not convert 'std::find<__gnu_cxx::__normal_iterator<int*, std::vector<int> >, int>(A.std::vector<_Tp, _Alloc>::begin<int, std::allocator<int> >(), A.std::vector<_Tp, _Alloc>::end<int, std::allocator<int> >(), (* & Result.std::priority_queue<_Tp, _Sequence, _Compare>::top<int, std::vector<int>, std::less<int> >()))' from '__gnu_cxx::__normal_iterator<int*, std::vector<int> >' to 'bool'|
не мога да разбера защо ? синтаксиса е правилен.
Благодаря предварително !