自己不会做,看了题解懂得

从最高位依次往低位遍历,因为偶数个1是不改变符号的,所以带个贪心即可(可以看成是带撤销的。。)

每轮循环用sum记录该位选择1可以减少的值

如果是负数,就不要改成1

如果是正,就改成1,然后增加一次改成1的影响

怎么增加影响:如果一个数的i位改成1,等价于其在最终减少的值 *-1,

比如说原来是a[i],现在和&s 是 一个1,那么就直接变成-a[i]

然后又多了一个1, 那么又变成了 a[i], 即等价于每次影响乘以了 -1

#include <bits/stdc++.h>
#define LL long long
using namespace std;
const int maxn = 300010;
LL a[maxn], b[maxn];
int main() {int n;LL sum = 0;scanf("%d", &n);for (int i = 1; i <= n; i++) {scanf("%lld%lld", &a[i], &b[i]);sum += a[i];}if(sum < 0) {for (int i = 1; i <= n; i++)a[i] = -a[i];}LL ans = 0;for (int j = 61; j >= 0; j--) {LL s = 0;for (int i = 1; i <= n; i++) {if(b[i] == (1ll << j)) s += a[i];}if(s > 0) ans |= (1ll << j);for (int i = 1; i <= n; i++) {if((b[i] >> j) & 1) {b[i] ^= (1ll << j);if(s > 0) a[i] = -a[i];}}}printf("%lld\n", ans);
}

转载于:https://www.cnblogs.com/zsben991126/p/10985536.html

带撤销贪心——cf1148F好题相关推荐

  1. codeforces1271 D. Portals(dp or 带悔贪心)

    D. Portals 由于每个点可以选择前面的某些点存在重复选择的情况,考虑除去重复选择的可能. 贪心:对于每一个城堡,我们都尽可能在最晚的时间控制,也就是在最后一个能控制它的点考虑是否控制. 于是考 ...

  2. BZOJ4358: permu(带撤销并查集 不删除莫队)

    题意 题目链接 Sol 感觉自己已经老的爬不动了.. 想了一会儿,大概用个不删除莫队+带撤销并查集就能搞了吧,\(n \sqrt{n} logn\)应该卡的过去 不过不删除莫队咋写来着?....跑去学 ...

  3. 【学长带练】编程手算题

    目录 1.空间 2.ASC 3.特殊时间 4.相乘 1.空间 本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可. 小蓝准备用 256MB 的内存空间开一个数组,数组的每个元素都是 ...

  4. 【CodeForces - 1150A】Stock Arbitraging (贪心,水题)

    题干: Welcome to Codeforces Stock Exchange! We're pretty limited now as we currently allow trading on ...

  5. kuangbin带你飞 专题1-23 题单

    kuangbin大神,对于打过ACM比赛的ACMer,无人不知无人不晓. 在此,附上vjudge平台上一位大神整理的[kuangbin带你飞]专题目录链接. [kuangbin带你飞专题目录1-23] ...

  6. H12-821题库(带详细解析)201-300题

    需要最新题库的小伙伴可以直接点赞+关注后私信(题库)获取! 201. (单选题)第三类LSA的Link ID是:60085467 A.所描述的ABR的Router ID                ...

  7. [国家集训队]数颜色 / 维护队列 (带修莫队模板题)

    题意: 墨墨购买了一套N支彩色画笔(其中有些颜色可能相同),摆成一排,你需要回答墨墨的提问.墨墨会向你发布如下指令: 1. Q L R代表询问你从第L支画笔到第R支画笔中共有几种不同颜色的画笔. 2. ...

  8. hdu5248序列变换(二分+贪心)基础题

    题意(中文的直接粘题意吧)                                                                                        ...

  9. 第 45 届国际大学生程序设计竞赛(ICPC)亚洲区域赛(昆明) AC(带悔贪心)

    下面两个题都是选择iii有个价值如果选择iii则不能选择i−1,i+1i-1,i+1i−1,i+1,让价值最大或最小 P1792 [国家集训队]种树 野心qwq 的博客 #include<bit ...

最新文章

  1. 手机-字符串替换显示
  2. 新入门的小白,整理一下特别简单实用的div+css兼容性的问题。
  3. C++ Map传递参数
  4. js 前加分号和感叹号的含义
  5. time,gettimeofday,clock_gettime,_ftime
  6. 带有服务器回调的通用客户端——服务器 DotNet远程处理
  7. android 屏幕密度范围,Android屏幕密度
  8. Affine-Transformation Parameters Regression for Face Alignment
  9. 神仙道人物属性基础知识普及
  10. JavaScript中实现键值对的方法
  11. AlphaControls 控件 编辑皮肤 变更Glyphs控制符号
  12. 固定资产管理系统能帮助企业做哪些工作?
  13. Consul 基本概念,同类比较和内部原理
  14. PEPC丨磷酸烯醇丙酮酸羧化酶功能研究
  15. 怎么把pdf拆分成一页一页的单独文件?
  16. python使用win32com读写excel的问题
  17. 《海边的卡夫卡》--[日]村上春树
  18. 解锁bootloader_如何以官方方式解锁Android手机的Bootloader
  19. 记:《洛克菲勒留给儿子的38封信》-- 35
  20. 想知道哪个音频翻译成文字的软件好用?这篇文章能够给你答案

热门文章

  1. 为什么面试你要25K,测试总监只给你15K
  2. 解决部分控件,自动获取焦点的情况
  3. python 单例模式
  4. 常用加密算法之非对称加密算法
  5. C++ 继承的构造与析构
  6. 如何做一个国产数据库(七) 网络传输 java做订阅客户端
  7. Ubuntu定制live cd
  8. oracle如何查询排行第二,Oracle优化查询改写(第二章-给查询结果排序)
  9. 95-25-010-命令-topic 创建过程
  10. 95-40-105-java.util.concurrent-线程-Executor