卬高杯
提出id | 提出時刻 | ユーザー名 | 問題 | 言語 | 判定状況 | 判定 | 実行時間 |
---|---|---|---|---|---|---|---|
114791 | 2023-10-24 08:08:26 | hiikunZ | I | cpp | 25/25 | AC | 371 |
#include <bits/stdc++.h>
using namespace std;
using ll = long long int;
const ll MAX = 1e18;
const ll MOD = 127237991;
int main(){
ll N;
cin >> N;
vector<ll> A(N),B(N),C(N),D(N),E(N);
for(ll i = 0;i < N;i++) cin >> A[i];
for(ll i = 0;i < N;i++) cin >> B[i];
for(ll i = 0;i < N;i++) cin >> C[i];
for(ll i = 0;i < N;i++) cin >> D[i];
for(ll i = 0;i < N;i++) cin >> E[i];
sort(A.begin(),A.end());
sort(B.begin(),B.end());
sort(C.begin(),C.end());
sort(D.begin(),D.end());
sort(E.begin(),E.end());
vector<ll> TA(N + 1),TB(N + 1),TC(N + 1),TD(N + 1),TE(N + 1);
for(ll i = 0;i <= N;i++) TA[i] = i;
for(ll i = 0;i < N;i++){
ll cnt = lower_bound(A.begin(),A.end(),B[i]) - A.begin();
TB[i + 1] = (TB[i] + TA[cnt]) % MOD;
}
for(ll i = 0;i < N;i++){
ll cnt = lower_bound(B.begin(),B.end(),C[i]) - B.begin();
TC[i + 1] = (TC[i] + TB[cnt]) % MOD;
}
for(ll i = 0;i < N;i++){
ll cnt = lower_bound(C.begin(),C.end(),D[i]) - C.begin();
TD[i + 1] = (TD[i] + TC[cnt]) % MOD;
}
for(ll i = 0;i < N;i++){
ll cnt = lower_bound(D.begin(),D.end(),E[i]) - D.begin();
TE[i + 1] = (TE[i] + TD[cnt]) % MOD;
}
cout << TE[N] << endl;
}
sample1.txt AC 2 sample2.txt AC 2 sample3.txt AC 4 sample4.txt AC 7 sample5.txt AC 7 case1.txt AC 8 case2.txt AC 7 case3.txt AC 7 case4.txt AC 8 case5.txt AC 7 case6.txt AC 191 case7.txt AC 138 case8.txt AC 168 case9.txt AC 73 case10.txt AC 71 case11.txt AC 295 case12.txt AC 368 case13.txt AC 266 case14.txt AC 336 case15.txt AC 302 case16.txt AC 206 case17.txt AC 371 case18.txt AC 201 case19.txt AC 328 case20.txt AC 200 371 AC371 AC