結果
問題 |
No.723 2つの数の和
|
ユーザー |
![]() |
提出日時 | 2018-08-14 14:17:14 |
言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
結果 |
TLE
|
実行時間 | - |
コード長 | 940 bytes |
コンパイル時間 | 1,101 ms |
コンパイル使用メモリ | 99,728 KB |
実行使用メモリ | 13,752 KB |
最終ジャッジ日時 | 2024-09-24 08:45:45 |
合計ジャッジ時間 | 5,513 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 1 TLE * 1 -- * 20 |
ソースコード
#include <stdio.h> #include <algorithm> #include <iostream> #include <string> #include <vector> #include <functional> #include <map> #include <iomanip> #include <math.h> #include <stack> #include <queue> #include <bitset> #include <cstdlib> #include <tuple> #include <cctype> using namespace std; int main() { int i, j, k; long n, x; vector<long>a; cin >> n >> x; long cnt3 = 0; for (i = 0; i < n; i++) { long aa; cin >> aa; if (aa > x) { cnt3++; } else { a.push_back(aa); } } sort(a.begin(), a.end()); long cnt = 0, cnt2 = 0; for (i = 0; i < n - cnt3; i++) { //if (a[i] > x)break; cnt += count(a.begin(), a.end(), x - a[i]); } cout << cnt << endl; /* for (i = 0; i < n; i++) { for (j = i; j < n; j++) { if (a[i] + a[j] == x) { if (i == j) { cnt2++; } else { cnt++; } } } } cout << cnt * 2 + cnt2 << endl; */ getchar(); getchar(); return 0; }