卬高杯
提出id | 提出時刻 | ユーザー名 | 問題 | 言語 | 判定状況 | 判定 | 実行時間 |
---|---|---|---|---|---|---|---|
114785 | 2023-10-24 08:07:13 | n_o_n_o_n | I | cpp | 25/25 | AC | 182 |
#include<bits/stdc++.h>
using namespace std;
using ll = long long;
const ll mod = 127237991;
const ll M = 1e5;
ll N,A[1<<17],B[1<<17],C[1<<17],D[1<<17],E[1<<17];
ll AA[1<<17],BB[1<<17],CC[1<<17],DD[1<<17],EE[1<<17];
int main(){
cin>>N;
for(int i=0; i<N; i++)cin>>A[i];
for(int i=0; i<N; i++)cin>>B[i];
for(int i=0; i<N; i++)cin>>C[i];
for(int i=0; i<N; i++)cin>>D[i];
for(int i=0; i<N; i++)cin>>E[i];
sort(A,A+N);
sort(B,B+N);
sort(C,C+N);
sort(D,D+N);
sort(E,E+N);
for(int i=0; i<N; i++)AA[A[i]]+=1;
for(int i=1; i<=M; i++)AA[i]+=AA[i-1],AA[i]%=mod;
for(int i=0; i<N; i++)BB[B[i]]+=AA[B[i]-1];
for(int i=1; i<=M; i++)BB[i]+=BB[i-1],BB[i]%=mod;
for(int i=0; i<N; i++)CC[C[i]]+=BB[C[i]-1];
for(int i=1; i<=M; i++)CC[i]+=CC[i-1],CC[i]%=mod;
for(int i=0; i<N; i++)DD[D[i]]+=CC[D[i]-1];
for(int i=1; i<=M; i++)DD[i]+=DD[i-1],DD[i]%=mod;
ll ans=0;
for(int i=0; i<N; i++)ans+=DD[E[i]-1],ans%=mod;
cout << ans << endl;
}
sample1.txt AC 6 sample2.txt AC 7 sample3.txt AC 11 sample4.txt AC 12 sample5.txt AC 9 case1.txt AC 21 case2.txt AC 21 case3.txt AC 21 case4.txt AC 21 case5.txt AC 21 case6.txt AC 119 case7.txt AC 73 case8.txt AC 87 case9.txt AC 42 case10.txt AC 42 case11.txt AC 149 case12.txt AC 181 case13.txt AC 158 case14.txt AC 167 case15.txt AC 151 case16.txt AC 105 case17.txt AC 182 case18.txt AC 105 case19.txt AC 163 case20.txt AC 102 182 AC182 AC