palindrome.cpp: In function 'std::vector<int> manacher(const string&)':
palindrome.cpp:35:22: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
for(int i = 1; i < S.size(); i++){
~~^~~~~~~~~~
palindrome.cpp: In function 'int main()':
palindrome.cpp:56:104: error: class template argument deduction failed:
priority_queue q([](pii a, pii b){ return a.second - a.first < b.second - b.first; }, vector<pii>());
^
palindrome.cpp:56:104: error: no matching function for call to 'priority_queue(main()::<lambda(pii, pii)>, std::vector<std::pair<int, int> >)'
In file included from /usr/include/c++/7/queue:64:0,
from /usr/include/x86_64-linux-gnu/c++/7/bits/stdc++.h:86,
from palindrome.cpp:1:
/usr/include/c++/7/bits/stl_queue.h:552:2: note: candidate: template<class _Tp, class _Sequence, class _Compare, class _InputIterator> priority_queue(_InputIterator, _InputIterator, const _Compare&, _Sequence&&)-> std::priority_queue<_Tp, _Sequence, _Compare>
priority_queue(_InputIterator __first, _InputIterator __last,
^~~~~~~~~~~~~~
/usr/include/c++/7/bits/stl_queue.h:552:2: note: template argument deduction/substitution failed:
palindrome.cpp:56:104: note: deduced conflicting types for parameter '_InputIterator' ('main()::<lambda(pii, pii)>' and 'std::vector<std::pair<int, int> >')
priority_queue q([](pii a, pii b){ return a.second - a.first < b.second - b.first; }, vector<pii>());
^
In file included from /usr/include/c++/7/queue:64:0,
from /usr/include/x86_64-linux-gnu/c++/7/bits/stdc++.h:86,
from palindrome.cpp:1:
/usr/include/c++/7/bits/stl_queue.h:541:2: note: candidate: template<class _Tp, class _Sequence, class _Compare, class _InputIterator> priority_queue(_InputIterator, _InputIterator, const _Compare&, const _Sequence&)-> std::priority_queue<_Tp, _Sequence, _Compare>
priority_queue(_InputIterator __first, _InputIterator __last,
^~~~~~~~~~~~~~
/usr/include/c++/7/bits/stl_queue.h:541:2: note: template argument deduction/substitution failed:
palindrome.cpp:56:104: note: deduced conflicting types for parameter '_InputIterator' ('main()::<lambda(pii, pii)>' and 'std::vector<std::pair<int, int> >')
priority_queue q([](pii a, pii b){ return a.second - a.first < b.second - b.first; }, vector<pii>());
^
In file included from /usr/include/c++/7/queue:64:0,
from /usr/include/x86_64-linux-gnu/c++/7/bits/stdc++.h:86,
from palindrome.cpp:1:
/usr/include/c++/7/bits/stl_queue.h:509:2: note: candidate: template<class _Tp, class _Sequence, class _Compare, class _Alloc, class _Requires> priority_queue(std::priority_queue<_Tp, _Sequence, _Compare>&&, const _Alloc&)-> std::priority_queue<_Tp, _Sequence, _Compare>
priority_queue(priority_queue&& __q, const _Alloc& __a)
^~~~~~~~~~~~~~
/usr/include/c++/7/bits/stl_queue.h:509:2: note: template argument deduction/substitution failed:
palindrome.cpp:56:104: note: 'main()::<lambda(pii, pii)>' is not derived from 'std::priority_queue<_Tp, _Sequence, _Compare>'
priority_queue q([](pii a, pii b){ return a.second - a.first < b.second - b.first; }, vector<pii>());
^
In file included from /usr/include/c++/7/queue:64:0,
from /usr/include/x86_64-linux-gnu/c++/7/bits/stdc++.h:86,
from palindrome.cpp:1:
/usr/include/c++/7/bits/stl_queue.h:505:2: note: candidate: template<class _Tp, class _Sequence, class _Compare, class _Alloc, class _Requires> priority_queue(const std::priority_queue<_Tp, _Sequence, _Compare>&, const _Alloc&)-> std::priority_queue<_Tp, _Sequence, _Compare>
priority_queue(const priority_queue& __q, const _Alloc& __a)
^~~~~~~~~~~~~~
/usr/include/c++/7/bits/stl_queue.h:505:2: note: template argument deduction/substitution failed:
palindrome.cpp:56:104: note: 'main()::<lambda(pii, pii)>' is not derived from 'const std::priority_queue<_Tp, _Sequence, _Compare>'
priority_queue q([](pii a, pii b){ return a.second - a.first < b.second - b.first; }, vector<pii>());
^
In file included from /usr/include/c++/7/queue:64:0,
from /usr/include/x86_64-linux-gnu/c++/7/bits/stdc++.h:86,
from palindrome.cpp:1:
/usr/include/c++/7/bits/stl_queue.h:501:2: note: candidate: template<class _Tp, class _Sequence, class _Compare, class _Alloc, class _Requires> priority_queue(const _Compare&, _Sequence&&, const _Alloc&)-> std::priority_queue<_Tp, _Sequence, _Compare>
priority_queue(const _Compare& __x, _Sequence&& __c, const _Alloc& __a)
^~~~~~~~~~~~~~
/usr/include/c++/7/bits/stl_queue.h:501:2: note: template argument deduction/substitution failed:
palindrome.cpp:56:104: note: candidate expects 3 arguments, 2 provided
priority_queue q([](pii a, pii b){ return a.second - a.first < b.second - b.first; }, vector<pii>());
^
In file included from /usr/include/c++/7/queue:64:0,
from /usr/include/x86_64-linux-gnu/c++/7/bits/stdc++.h:86,
from palindrome.cpp:1:
/usr/include/c++/7/bits/stl_queue.h:496:2: note: candidate: template<class _Tp, class _Sequence, class _Compare, class _Alloc, class _Requires> priority_queue(const _Compare&, const _Sequence&, const _Alloc&)-> std::priority_queue<_Tp, _Sequence, _Compare>
priority_queue(const _Compare& __x, const _Sequence& __c,
^~~~~~~~~~~~~~
/usr/include/c++/7/bits/stl_queue.h:496:2: note: template argument deduction/substitution failed:
palindrome.cpp:56:104: note: candidate expects 3 arguments, 2 provided
priority_queue q([](pii a, pii b){ return a.second - a.first < b.second - b.first; }, vector<pii>());
^
In file included from /usr/include/c++/7/queue:64:0,
from /usr/include/x86_64-linux-gnu/c++/7/bits/stdc++.h:86,
from palindrome.cpp:1:
/usr/include/c++/7/bits/stl_queue.h:492:2: note: candidate: template<class _Tp, class _Sequence, class _Compare, class _Alloc, class _Requires> priority_queue(const _Compare&, const _Alloc&)-> std::priority_queue<_Tp, _Sequence, _Compare>
priority_queue(const _Compare& __x, const _Alloc& __a)
^~~~~~~~~~~~~~
/usr/include/c++/7/bits/stl_queue.h:492:2: note: template argument deduction/substitution failed:
palindrome.cpp:56:104: note: couldn't deduce template parameter '_Tp'
priority_queue q([](pii a, pii b){ return a.second - a.first < b.second - b.first; }, vector<pii>());
^
In file included from /usr/include/c++/7/queue:64:0,
from /usr/include/x86_64-linux-gnu/c++/7/bits/stdc++.h:86,
from palindrome.cpp:1:
/usr/include/c++/7/bits/stl_queue.h:488:2: note: candidate: template<class _Tp, class _Sequence, class _Compare, class _Alloc, class _Requires> priority_queue(const _Alloc&)-> std::priority_queue<_Tp, _Sequence, _Compare>
priority_queue(const _Alloc& __a)
^~~~~~~~~~~~~~
/usr/include/c++/7/bits/stl_queue.h:488:2: note: template argument deduction/substitution failed:
palindrome.cpp:56:104: note: candidate expects 1 argument, 2 provided
priority_queue q([](pii a, pii b){ return a.second - a.first < b.second - b.first; }, vector<pii>());
^
In file included from /usr/include/c++/7/queue:64:0,
from /usr/include/x86_64-linux-gnu/c++/7/bits/stdc++.h:86,
from palindrome.cpp:1:
/usr/include/c++/7/bits/stl_queue.h:482:7: note: candidate: template<class _Tp, class _Sequence, class _Compare> priority_queue(const _Compare&, _Sequence&&)-> std::priority_queue<_Tp, _Sequence, _Compare>
priority_queue(const _Compare& __x, _Sequence&& __s = _Sequence())
^~~~~~~~~~~~~~
/usr/include/c++/7/bits/stl_queue.h:482:7: note: template argument deduction/substitution failed:
palindrome.cpp:56:104: note: couldn't deduce template parameter '_Tp'
priority_queue q([](pii a, pii b){ return a.second - a.first < b.second - b.first; }, vector<pii>());
^
In file included from /usr/include/c++/7/queue:64:0,
from /usr/include/x86_64-linux-gnu/c++/7/bits/stdc++.h:86,
from palindrome.cpp:1:
/usr/include/c++/7/bits/stl_queue.h:477:7: note: candidate: template<class _Tp, class _Sequence, class _Compare> priority_queue(const _Compare&, const _Sequence&)-> std::priority_queue<_Tp, _Sequence, _Compare>
priority_queue(const _Compare& __x, const _Sequence& __s)
^~~~~~~~~~~~~~
/usr/include/c++/7/bits/stl_queue.h:477:7: note: template argument deduction/substitution failed:
palindrome.cpp:56:104: note: couldn't deduce template parameter '_Tp'
priority_queue q([](pii a, pii b){ return a.second - a.first < b.second - b.first; }, vector<pii>());
^
In file included from /usr/include/c++/7/queue:64:0,
from /usr/include/x86_64-linux-gnu/c++/7/bits/stdc++.h:86,
from palindrome.cpp:1:
/usr/include/c++/7/bits/stl_queue.h:473:2: note: candidate: template<class _Tp, class _Sequence, class _Compare, class _Seq, class _Requires> priority_queue()-> std::priority_queue<_Tp, _Sequence, _Compare>
priority_queue()
^~~~~~~~~~~~~~
/usr/include/c++/7/bits/stl_queue.h:473:2: note: template argument deduction/substitution failed:
palindrome.cpp:56:104: note: candidate expects 0 arguments, 2 provided
priority_queue q([](pii a, pii b){ return a.second - a.first < b.second - b.first; }, vector<pii>());
^
palindrome.cpp:58:22: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
for(int i = 0; i < a.size(); i++){
~~^~~~~~~~~~