cf#320 Div.2 Problem D "Or" Game

来源:互联网 发布:大数据产业园规划 编辑:程序博客网 时间:2024/04/30 22:46
#include <iostream>#include <cstring>#include <cstdio>using namespace std;#define LL long longint n,k,x;int a[200005],l[200005],r[200005];int main(){    scanf("%d%d%d",&n,&k,&x);    for(int i=1;i<=n;i++)        scanf("%d",&a[i]);    l[0]=0;    for(int i=1;i<=n;i++)        l[i]=(l[i-1]|a[i]);    r[n+1]=0;    for(int i=n;i>=1;i--)        r[i]=(r[i+1]|a[i]);    LL ans=0,A=1;    for(int i=1;i<=k;i++)        A*=x;    for(int i=1;i<=n;i++)        ans=max(ans,(A*a[i])|l[i-1]|r[i+1]);    printf("%I64d\n",ans);//如果用%lld在CF上是不允许提交的    return 0;}

0 0
原创粉丝点击