Submission #2242827


Source Code Expand

#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
typedef unsigned long long ull;
#define rep(i,a) for(int i=0;i<(a);i++)
#define MOD 1000000007

const int NMAX=100000;
ll A[NMAX],B[NMAX],D[NMAX],sumA[NMAX+1];

int main(){
  int N; cin>>N;
  rep(i,N) cin>>D[i];
  sort(D,D+N);
  rep(i,N){
    A[i]=N-(lower_bound(D,D+N,D[i]*2)-D);
    B[i]=(lower_bound(D,D+N,D[i]/2))-D+(D[0]*2<=D[i]?1:0);
  }
  rep(i,N) sumA[N-1-i]=sumA[N-i]+A[N-1-i]);
  ll ans=0;
  rep(i,N){
    int ind=lower_bound(D,D+N,D[i]*2)-D;
    (ans+=sumA[ind]*B[i])%=MOD;
  }
  cout<<ans<<endl;
  return 0;
}

Submission Info

Submission Time
Task B - 難易度
User misosoup
Language C++14 (GCC 5.4.1)
Score 0
Code Size 617 Byte
Status CE

Compile Error

./Main.cpp: In function ‘int main()’:
./Main.cpp:19:42: error: expected ‘;’ before ‘)’ token
   rep(i,N) sumA[N-1-i]=sumA[N-i]+A[N-1-i]);
                                          ^