結果
| 問題 |
No.2101 [Cherry Alpha N] ずっとこの数列だったらいいのに
|
| コンテスト | |
| ユーザー |
tails
|
| 提出日時 | 2022-10-15 11:07:46 |
| 言語 | cLay (20241019-1) |
| 結果 |
AC
|
| 実行時間 | 240 ms / 6,000 ms |
| コード長 | 506 bytes |
| コンパイル時間 | 7,312 ms |
| コンパイル使用メモリ | 228,972 KB |
| 実行使用メモリ | 34,176 KB |
| 最終ジャッジ日時 | 2024-06-26 19:40:09 |
| 合計ジャッジ時間 | 18,580 ms |
|
ジャッジサーバーID (参考情報) |
judge2 / judge1 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 42 |
ソースコード
ll@n,a[n],t[],u[],x[],y[];
rd((a,t--)(n));
rep(i,n){
x[i]=a[i]+t[i];
}
sortA_index(n,x,y);
sortA_index(n,t,a,u);
ll@q,d[q],l[],r[],v[],w[];
rd((d,l--,r--)(q));
sortA_index(q,d,l,r,v);
fenwick<ll>f0,f1;
f0.malloc(n,1);
f1.malloc(n,1);
rep(i,n){
f0.add(u[i],a[i]);
}
ll b=0,c=0;
rep(j,q){
while(b<n&&t[b]<d[j]){
f0.add(u[b],t[b]);
f1.add(u[b],1);
++b;
}
while(c<n&&x[c]<d[j]){
f0.add(y[c],-x[c]);
f1.add(y[c],-1);
++c;
}
w[v[j]]=f0.range(l[j],r[j])-d[j]*f1.range(l[j],r[j]);
}
wtLn(w(q));
tails