fork download
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3.  
  4. int main(){
  5. int count = 0;
  6. int n,x;
  7. cin >> n >> x;
  8. int A[n];
  9. for (int i = 0; i < n; i++){
  10. cin >> A[i];
  11. }
  12. sort(A, A + n);
  13. int f = 0;
  14. int e = n -1;
  15. //for (int i = 0; i < n; i++){
  16. // cout << A[i];
  17. //}
  18. while (e >= f + 1){
  19. if (A[f] + A[e] == x){
  20. count++;
  21. //cout << A[f] << " " << A[e] << "/";
  22. if (A[e] == A[e - 1] and e != f){
  23. e--;
  24. }
  25. else if (A[f] == A[f + 1]and f != e){
  26. f++;
  27. }
  28. else{
  29. f++;
  30. }
  31. }
  32. else if (A[f] + A[e] > x){
  33. e--;
  34. }
  35. else{
  36. f++;
  37. }
  38. }
  39. cout << count;
  40. }
  41.  
Success #stdin #stdout 0s 5300KB
stdin
7 6
1 2 4 3 4 5 3
stdout
4