| 比赛 |
期末考试0 |
评测结果 |
AAAEEEEEEE |
| 题目名称 |
我能在摸鱼被发现的情况下躲避教练的视奸吗 |
最终得分 |
30 |
| 用户昵称 |
小福鑫 |
运行时间 |
1.216 s |
| 代码语言 |
C++ |
内存使用 |
11.26 MiB |
| 提交时间 |
2026-02-07 10:48:42 |
显示代码纯文本
#include<bits/stdc++.h>
#define int long long
const int mod=4294967296;
using namespace std;
int n,m,l,r,a[1001],b[1001],c[1001],aa[1001][1001],ba[1001][1001],ca[1001][1001],ans,an[1001][1001];
inline int read(){
int x=0,f=1;char ch=getchar();
while(!isdigit(ch)){if(ch=='-')f=-1;ch=getchar();}
while(isdigit(ch))x=(x<<3)+(x<<1)+ch-48,ch=getchar();
return x*f;
}
signed main(){
freopen("shijian.in","r",stdin);
freopen("shijian.out","w",stdout);
n=read(),m=read();
for(int i=1;i<=n;i++){
a[i]=read();
}
for(int l=1;l<=n;l++){
for(int r=l;r<=n;r++){
if(l==r){
aa[l][r]=a[l];
}
else{
aa[l][r]=aa[l][r-1] & a[r];
}
}
}
for(int i=1;i<=n;i++){
b[i]=read();
}
for(int l=1;l<=n;l++){
for(int r=l;r<=n;r++){
if(l==r){
ba[l][r]=b[l];
}
else{
ba[l][r]=ba[l][r-1] | b[r];
}
}
}
for(int i=1;i<=n;i++){
c[i]=read();
}
for(int l=1;l<=n;l++){
for(int r=l;r<=n;r++){
if(l==r){
ca[l][r]=c[l];
}
else{
ca[l][r]=__gcd(ca[l][r-1],c[r]);
}
}
}
for(int i=1;i<=n;i++){
for(int j=1;j<=n;j++){
an[i][j]=aa[i][j]*ba[i][j]*ca[i][j]%mod;
}
}
for(int i=1;i<=n;i++){
for(int j=1;j<=n;j++){
an[i][j]+=an[i][j-1];
an[i][j]%=mod;
}
}
while(m--){
ans=0;
l=read(),r=read();
for(int i=l;i<=r;i++){
ans+=(an[i][r]-an[i][i-1]);
ans%=mod;
}
cout<<ans<<endl;
}
}