Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- int n;
- cin >> n;
- vi a(n), b(n);
- unordered_map<int, int> mp;
- for(int i = 0; i < n; i++) {
- cin >> a[i];
- b[i] = a[i];
- mp[a[i]] = 1;
- }
- sort(all(a));
- for(int i = 0; i < n; i++) {
- for(int j = 0; j < i; j++) {
- if(lower_bound(all(a), a[i] + a[j]) == a.end()) continue;
- if(a[lower_bound(all(a), a[i] + a[j]) - a.begin()] == a[i] + a[j]) mp[a[i] + a[j]]++;
- }
- }
- for(int i = 0; i < n; i++) {
- cout << mp[b[i]] - 1 << '\n';
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement