// you can also use includes, for example:// #include <algorithm>#include <cstdio>#include <iostream>#include <vector>#include <cstdlib>using namespace std;void HSort(vector<int>&A, int b, int e);void adjust(vector<int>& A, int b, int e);int solution( const vector<int> &A) { // write your code in C++98 int i, j, k; int len = A.size(); if(len<=2) return 0; vector<int> buf(len+1); for(i=0; i<len; ++i) { buf[i+1] = A[i]; } HSort(buf, 1, len); for(k=len; k>=3; --k) { i = k-1; j = k-2; if(buf[i]+buf[j]>buf[k]) return 1; } return 0; }void HSort(vector<int>&A, int b, int e){ int len = A.size(); int i, j; for(i=len/2; i>0; --i) adjust(A, i, e);//max heap //cout<<A[0]; while(e>b) { int a = A[e]; A[e] = A[b]; A[b] = a; --e; if(b<e) adjust(A, b, e); }}void adjust(vector<int>& A, int b, int e){ int p = A[b]; int i,j; for(i=b; i<=e; ) { j = 2*i; if(j>e) break; if(j+1<=e && A[j+1]>A[j]) j++; if(p<A[j]) { A[i] = A[j]; i = j; } else { break; } } A[i] = p;}