CF1148F
时间:2020-05-27
本文章向大家介绍CF1148F,主要包括CF1148F使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
思想僵化,2700的题都要看题解了。
不得不说这题真的挺妙。
废话不多说了,先假设所有val的和是正数。
考虑分组,把所有数按照最高位的1来分成62组,如果能使每一组最后的和都为负数,本题就被解决了。
具体来说,从低位到高位考虑每一组(mask最高位1的位置),如果这一组中数的val和大于0,就把答案的这一位设为1,再把所有mask中这一位是1的数val取反,否则把答案的这一位设为0。
#include<cstdio> #include<cstring> #include<algorithm> using namespace std; #define ll long long int int n; ll sum=0,ans=0; int val[300000]; ll mask[300000]; int main(void) { scanf("%d",&n); for(int i=0;i<n;i++){ scanf("%d%lld",&val[i],&mask[i]); sum+=val[i]; } if(sum<0) for(int i=0;i<n;i++) val[i]=-val[i]; for(int i=0;i<62;i++){ sum=0; for(int j=0;j<n;j++) if(mask[j]>=(1ll<<i)&&mask[j]<(1ll<<(i+1))) sum+=val[j]; if(sum>0){ ans+=(1ll<<i); for(int j=0;j<n;j++) if(mask[j]>>i&1) val[j]=-val[j]; } } printf("%lld\n",ans); return 0; } /* */
原文地址:https://www.cnblogs.com/2005lz/p/12976353.html
- OpenGL ES学习001---绘制三角形
- Android之MaterialDesign应用技术2-仿支付宝上滑搜索框缓慢消失
- 披着狼皮的羊——寻找惠普多款打印机中的RCE漏洞
- Android之MaterialDesign应用技术
- 蛙啊!老母亲给你整理了DEDECMS漏洞集合,快回家!
- Android之Bmob移动后端云服务器
- golang基于redis lua封装的优先级去重队列
- Java设计模式总汇二(小白也要飞)
- Java设计模式总汇一
- Android数据绑定技术二,企业级开发
- Android数据绑定技术一,企业级开发
- 工具| sqlmap payload修改之路(下)
- Retrofit网络请求库应用02——json解析
- Servlet与Jsp的结合使用实现信息管理系统二
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- ELK日志收集原理+es集群+elk搭建+本地目录文件读取,搭建分布式日志收集系统
- 什么是JavaScript 的闭包???
- es集群+elk搭建+kafka搭建分布式日志收集系统
- 设计模式(2)[JS版]---JavaScript如何实现单例模式?
- 算法基础:分治
- 黑客帝国中代码雨如何实现?用 canvas 轻松实现代码雨炫酷效果!
- 设计模式(3)[JS版]-JavaScript中的构造函数模式是什么?
- 基于docker 安装elasticsearch + kibana + ik分词器(6.7.2版本)
- 算法基础:排序
- 算法基础:动态规划
- 什么是 “并查集” ?
- Sentinel + SpringBoot 基于本地文件模式实现规则持久化
- 1.5 Arduino的第一个程序
- 2.1 Arduino语言和结构
- TKE 实践亲和性与反亲和性