首页 > 代码库 > hdu 4737水题
hdu 4737水题
http://acm.hdu.edu.cn/showproblem.php?pid=4737
【题意】:给出a数组和m,求 f(i, j) = ai|ai+1|ai+2| ... | aj ,f(i, j) < m的i j 对数
1 #include<iostream> 2 #include<algorithm> 3 #include<cstdio> 4 #include<cstring> 5 using namespace std; 6 #define inf 1000000000 7 #define LL __int64 8 9 LL a[100002];10 11 int main()12 {13 LL cas=1,t,n,m;14 scanf("%I64d",&t);15 LL ans;16 while(t--)17 {18 scanf("%I64d%I64d",&n,&m);19 ans=0;20 for(LL i=0;i<n;i++)21 scanf("%I64d",&a[i]);22 for(LL i=0;i<n;i++)23 {24 LL temp=0;25 for(LL j=i;j<n;j++)26 {27 temp|=a[j];28 if(temp>=m)29 {30 ans+=n-j;31 break;32 }33 34 }35 }36 ans=n*(n+1)/2-ans;37 printf("Case #%I64d: %I64d\n",cas++,ans);38 }39 return 0;40 }
hdu 4737水题
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。