思路:先找出现次数>=2数。然后在取跑所有数,需要考虑一般情况(当一个人比另一个人的ai小且他们的与运算等于小的那个人的ai那么可以知道大的那个人必定强于ai小的那个人)。

则可以用位运算实现判断强弱。

 #include<bits/stdc++.h>

 using namespace std;
#define int long long
#define N 100500
struct str{
int a,b;
}st[N];
map<int,int> mp;
vector<int> v;
signed main(){
int n;
cin>>n;
for(int i=;i<=n;i++) {
cin>>st[i].a;mp[st[i].a]++;
}
for(int i=;i<=n;i++) cin>>st[i].b;
int ans=;
for(int i=;i<=n;i++){ if(mp[st[i].a]>=){
ans+=st[i].b;
v.push_back(st[i].a);
}
}
for(int i=;i<=n;i++){
if(mp[st[i].a]>=)
continue;
for(int j=;j<v.size();j++){
if(v[j]>st[i].a&&(v[j]&st[i].a)==st[i].a){
v.push_back(st[i].a);
ans+=st[i].b;
break;
}
}
}
cout<<ans<<'\n';
return ;
} /* 11
11
10 010
101
*/

最新文章

  1. iOS10以上关于访问权限设置
  2. [JavaScript]JS由来
  3. CGLib与JDKProxy的区别
  4. 正则表达式分组()、不捕获(?:)和断言(?&lt;=)详解
  5. 7 天玩转 ASP.NET MVC — 第 3 天
  6. Linux写时拷贝技术(copy-on-write)
  7. Eclipse中项目面板字体的修改
  8. spring实战四之Bean的自动装配(注解方式)
  9. 通过驱动向打印机发送一段(ESC)控制指令
  10. ACM题目————列变位法解密
  11. CentOS学习笔记--文件权限概念
  12. 图片裁切插件jCrop的使用心得(三)
  13. 高性能MySql学习笔记——锁、事务、隔离级别(转)
  14. Thinkphp入门 二 —空操作、空模块、模块分组、前置操作、后置操作、跨模块调用(46)
  15. mariaDB安装完成后设置root密码等初始化操作
  16. Javascript几种跨域方式总结
  17. HDU 4034 Graph(Floyd变形——逆向判断)
  18. 对java中路径的一些理解
  19. 相似的RGB颜色——算法面试刷题3(for google),考察二分
  20. SVN操作步骤

热门文章

  1. 复杂链表的复制——牛客offer
  2. 使用UTF8字符集存储中文生僻字
  3. List 集合 使用 remove 踩得坑
  4. PAT-1012 The Best Rank (25 分) 查询分数对应排名(包括并列)
  5. eclipse怎样修改同名包(package)的显示样式、格式
  6. Google Drive 和 Dropbox 同步同一个文件夹目录
  7. ZROI17普及23-B星空题解--图的灵活转化
  8. rabbitMQ 安装,基于Windows环境
  9. A*算法与8数字谜题(参见《算法》P226习题2.5.32)
  10. Python中带参数的装饰器