求助
查看原帖
求助
763634
lszxxy楼主2023/11/12 16:32
#include<bits/stdc++.h>
using namespace std;
int main(){
	long long n,a[5005] = {0},t,ans = 0;
    cin >> n;
    for(int i = 1; i <= n; i++){
        cin >> t;
        a[t]++;
    }
    for(int i = 1; i <= 5000; i++){
        for(int j = i; j <= 5000; j++){
            if(i + j > 5000)break;
            if(i == j){
                if(a[i] >= 2 && a[2 * i] >= 2){
                    ans += a[i] * (a[i] - 1) / 2 % 100000007 * a[2 * i] * (a[2 * i] - 1) / 2 % 100000007;
                }
            }else{
                if(a[i] && a[j] && a[i + j] >= 2){
                    ans += a[i] * a[j] % 100000007 * a[i + j] * (a[i + j] - 1) / 2 % 100000007;
                }
            }
        }
    }
    cout << ans;
	return 0;
}
2023/11/12 16:32
加载中...