Kiru Lucifer | Chat Online
29/10/2023 13:49:01

Tìm lỗi sai


Các bạn cho mình biết mình làm sai chỗ nào nhé
p/s: đề bài trong ảnh


#include <bits/stdc++.h>
const int N=1e5+5;
using namespace std;
int a[N],n,k,t,p;
long long res=0;
void sub1()
{
    for(int i=1;i<=n;i++)
    {
        t=lower_bound(a+i,a+n+i,k-a[i])-a;
        if(t<=n && a[t]==k-a[i])
        {
            p=upper_bound(a+i,a+n+i,k-a[i])-a-1;
            res+=p-t+1;
        }
        if (k==0) continue;
        t=lower_bound(a+i,a+n+i,k-a[i])-a;
        if(t<=n && a[t]==-k-a[i])
        {
                p=upper_bound(a+i,a+n+i,-k-a[i])-a-1;
                res=p-t+1;
        }
    }
}
int main()
{
    ios_base::sync_with_stdio(0);
    cin.tie(0);cout.tie(0);
    cin>>n>>k;
    for(int i=1;i<=n;i++) cin>>a[i];
    sort(a+1,a+n+1);
    sub1();
    cout<<res;
    return 0;
}
 
----- Nội dung dịch tự động từ ảnh -----
Câu 2. TONGK (6 điểm)
Cho số nguyên dương N và dãy số a1, a2, ...ay. Hãy đếm xem có bao nhiêu cặp (ai, aj) thoả
mãn |ai+ aj| = K (Với K là một số cho trước và i≤j).
Dữ liệu: Vào từ file TONGK.INP gồm hai dòng:
+ Dòng đầu tiên: 2 số nguyên N và K(2 + Dòng thứ hai gồm N số nguyên ai, a2, ...aN ( ai| <2.10).
Kết quả: Ghi ra file TONGK.OUT một số nguyên là kết quả của bài toán.
Ví dụ:
TONGK.INP
75
4341434
4
TONGK.OUT
Bài tập đã có 1 trả lời, xem 1 trả lời ... |
Đăng ký tài khoản để trả lời bài tập.
Đăng ký tài khoản để có thể trả lời bài tập này!

Đăng ký qua Google:

Hoặc lựa chọn:
Đăng ký bằng email, điện thoại Đăng nhập bằng email, điện thoại
Lazi.vn