#pragma GCC optimize ("Ofast")
#include<bits/stdc++.h>
using namespace std;
#define main dummy_main
int main( ) {
return 0 ;
}
#undef main
class Solution{
public :
int maxOperations( vector< int > & A, int K) {
int res = 0 ;
int N = A.size ( ) ;
int x = 0 ;
int y = N- 1 ;
sort( A.begin ( ) , A.end ( ) ) ;
while ( x < y) {
if ( A[ x] + A[ y] == K) {
res++ ;
x++ ;
y-- ;
continue ;
}
if ( A[ x] + A[ y] < K) {
x++ ;
}
else {
y-- ;
}
}
return res;
}
}
;
// cLay version 20201206-1
// --- original code ---
// #define main dummy_main
// {}
// #undef main
//
// class Solution {
// public:
// int maxOperations(vector<int>& A, int K) {
// int res = 0, N = A.size(), x = 0, y = N-1;
// sort(A.begin(), A.end());
// while(x < y){
// if(A[x] + A[y] == K) res++, x++, y--, continue;
// if[A[x] + A[y] < K, x++, y--];
// }
// return res;
// }
// };
I3ByYWdtYSBHQ0Mgb3B0aW1pemUgKCJPZmFzdCIpCiNpbmNsdWRlPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CiNkZWZpbmUgbWFpbiBkdW1teV9tYWluCmludCBtYWluKCl7CiAgcmV0dXJuIDA7Cn0KI3VuZGVmIG1haW4KY2xhc3MgU29sdXRpb257CiAgcHVibGljOgogIGludCBtYXhPcGVyYXRpb25zKHZlY3RvcjxpbnQ+JiBBLCBpbnQgSyl7CiAgICBpbnQgcmVzID0gMDsKICAgIGludCBOID0gQS5zaXplKCk7CiAgICBpbnQgeCA9IDA7CiAgICBpbnQgeSA9IE4tMTsKICAgIHNvcnQoQS5iZWdpbigpLCBBLmVuZCgpKTsKICAgIHdoaWxlKHggPCB5KXsKICAgICAgaWYoQVt4XSArIEFbeV0gPT0gSyl7CiAgICAgICAgcmVzKys7CiAgICAgICAgeCsrOwogICAgICAgIHktLTsKICAgICAgICBjb250aW51ZTsKICAgICAgfQogICAgICBpZihBW3hdICsgQVt5XSA8IEspewogICAgICAgIHgrKzsKICAgICAgfQogICAgICBlbHNlewogICAgICAgIHktLTsKICAgICAgfQogICAgfQogICAgcmV0dXJuIHJlczsKICB9Cn0KOwovLyBjTGF5IHZlcnNpb24gMjAyMDEyMDYtMQoKLy8gLS0tIG9yaWdpbmFsIGNvZGUgLS0tCi8vICNkZWZpbmUgbWFpbiBkdW1teV9tYWluCi8vIHt9Ci8vICN1bmRlZiBtYWluCi8vIAovLyBjbGFzcyBTb2x1dGlvbiB7Ci8vIHB1YmxpYzoKLy8gICBpbnQgbWF4T3BlcmF0aW9ucyh2ZWN0b3I8aW50PiYgQSwgaW50IEspIHsKLy8gICAgIGludCByZXMgPSAwLCBOID0gQS5zaXplKCksIHggPSAwLCB5ID0gTi0xOwovLyAgICAgc29ydChBLmJlZ2luKCksIEEuZW5kKCkpOwovLyAgICAgd2hpbGUoeCA8IHkpewovLyAgICAgICBpZihBW3hdICsgQVt5XSA9PSBLKSByZXMrKywgeCsrLCB5LS0sIGNvbnRpbnVlOwovLyAgICAgICBpZltBW3hdICsgQVt5XSA8IEssIHgrKywgeS0tXTsKLy8gICAgIH0KLy8gICAgIHJldHVybiByZXM7Ci8vICAgfQovLyB9Owo=