“起床困难综合症”「NOI2014」【题解】

2023-11-13

起床困难综合症(洛谷)

题目

题目描述

drd的防御战线由n扇防御门组成。每扇防御门包括一个运算op和一个参数t,其中运算一定是OR,XOR,AND中的一种,参数则一定为非负整数。如果还未通过防御门时攻击力为x,则其通过这扇防御门后攻击力将变为x op t。最终drd受到的伤害为对方初始攻击力x依次经过所有n扇防御门后转变得到的攻击力。由于atm水平有限,他的初始攻击力只能为0到m之间的一个整数(即他的初始攻击力只能在 0, 1, … , m中任选,但在通过防御门之后的攻击力不受m的限制)。为了节省体力,他希望通过选择合适的初始攻击力使得他的攻击能让drd受到最大的伤害,请你帮他计算一下,他的一次攻击最多能使drd受到多少伤害。

输入格式

输入文件的第 1 行包含 2 个整数,依次为n, m,表示 drd 有n扇防御门,atm 的初始攻击力为0到m之间的整数。
接下来n行,依次表示每一扇防御门。每行包括一个字符串op和一个非负整数t,两者由一个空格隔开,且op在前,t在后,op表示该防御门所对应的操作,t表示对应的参数。

输出格式

输出一行一个整数,表示atm的一次攻击最多使drd受到多少伤害。

样例
样例1输入
3 10
AND 5
OR 6
XOR 7
样例1输出
1
样例1解释

假设初始攻击力为 4,最终攻击力经过了如下计算:

  1. 4 AND 5 = 4
  2. 4 OR 6 = 6
  3. 6 XOR 7 = 1

类似的,我们可以计算出初始攻击力为 1,3,5,7,9 时最终攻击力为 0,初始攻击力为 0,2,4,6,8,10 时最终攻击力为 1,因此atm的一次攻击最多使drd受到的伤害值为1。

数据范围

在这里插入图片描述

分析

这一道题要用 位运算,位运算的主要特点之一就是在二进制表示下不进位,所以初始攻击力可以从高位到低位,依次考虑每一位填0还是1。
因为要让攻击力尽量大,所以最好填1,但是如果填1进行n次位运算后结果不为1,则填0更好。
注意:还要判断最高位填1会不会超出m的范围。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

“起床困难综合症”「NOI2014」【题解】 的相关文章

随机推荐

  • 几种压缩算法

    一 行程长度压缩 原理是将一扫描行中的颜色值相同的相邻像素用一个计数值和那些像素的颜色值来代替 例如 aaabccccccddeee 则可用3a1b6c2d3e来代替 对于拥有大面积 相同颜色区域的图像 用RLE压缩方法非常有效 由RLE原
  • Java多线程:线程8锁案例分析

    线程8锁案例分析 通过分析代码 推测打印结果 并运行代码进行验证 1 两个线程调用同一个对象的两个同步方法 被synchronized修饰的方法 锁的对象是方法的调用者 因为两个方法的调用者是同一个 所以两个方法用的是同一个锁 先调用方法的
  • 编译filament

    从github上下载github 每次都被中断 于是灵机一动 从码云上下载1 8下载 果然速度快 先cmake 发现需要python 把enable java去掉 编译后试试 hellopbr
  • nginx系统学习5--常用配置4--防盗链配置

    6 4 防盗链配置 6 4 1 操作 01 配置 server listen 7000 server name www test com www test1 com root html www test location index tes
  • PTA数组2

    目录 1 方阵对角线元素求和及计数 2 使用选择法升序 3 输入10个正整数到a数组中 对a 10 数组中的素数升序排序 4 对a 10 数组中的素数排序 1 方阵对角线元素求和及计数 对输入的一个N N的方阵 求其两条对角线上的元素之和及
  • Excel根据身份证号提取省份

    身份证号码各位的含义 1 2位省 自治区 直辖市代码 3 4位地级市 盟 自治州代码 5 6位县 县级市 区代码 7 14位出生年月日 比如19670401代表1967年4月1日 15 17位为顺序号 其中17位 倒数第二位 男为单数 女为
  • 关于多线程的爬取心得和用法

    最近爬取一些学习上所要用到的东西 因为要搞得东西比较多 写的爬取的速度大大下降 于是我就尝试提升以下程序爬取的速度 正好学过多线程 灵机一动就搞了个多线程的程序爬取 此次没有啥好说的 有啥不懂请看注释 import queue import
  • (Java 功能篇) Java Proxool

    本文题目没有强调的是Java应用 不是Java Web应用 原因是从网上找有关Proxool的例子 全是一个摸样 都是将讲解Java Web中的应用 真没劲 难道Proxool离开了web就不能用了 不信你可以google一把看看 在阅读了
  • 定时器之编码器模式

    1 什么是编码器 编码器 encoder 是将信号或数据进行编制 转换为可用以通讯 传输和存储的信号形式的设备 编码器把角位移或直线位移转换成电信号 前者称为码盘 后者称为码尺 2 分类 按照读出方式编码器可以分为接触式和非接触式两种 按照
  • [转]IDEA中使用Debug

    一 Debug开篇 首先看下IDEA中Debug模式下的界面 如下是在IDEA中启动Debug模式 进入断点后的界面 我这里是Windows 可能和Mac的图标等会有些不一样 就简单说下图中标注的8个地方 以Debug模式启动服务 左边的一
  • VS环境下,关于“找不到 **.dll,无法执行代码,重新安装程序可能会解决此问题。”的四种解决方案

    dll 是动态链接库文件 里面存储着函数和数据 lib是静态数据连接库文件 存储着函数名和文件位置 也就是说在执行程序时 exe文件可通过lib文件找到dll文件 并执行在程序中调用的函数 Windows在查找dll文件会按照以下几种方式顺
  • 被动遥感和主动遥感的概念辨析

    主动遥感 主动遥感 又称有源遥感 有时也称遥测 指从遥感平台上的人工辐射源 向目标物发射一定形式的电磁波 再由传感器接收和记录其反射波的遥感系统 其主要优点是不依赖太阳辐射 可以昼夜工作 而且可以根据探测目的的不同 主动选择电磁波的波长和发
  • CSS > Flex 布局中的放大和收缩计算

    原文 https dev opera com articles flexbox basics 译者注 本文仅简单翻译下原文中关于如何计算 flex 属性的值的部分 其他有关 Flex 布局的知识本文不作探讨 2015 12 5更新 关于 f
  • pixi.js 导出部分区域裁剪图片

    方案 先通过api到出image对象 在通过canvas绘制图片 在导出数据 代码 const x y this app stage getBounds 超出的x y const stageImage this app renderer p
  • mybatis ---- 级联查询 一对多 (集合映射)

    关联有嵌套查询和嵌套结果两种方式 本文是按照嵌套结果这种方式来说明的 上一章介绍了多对一的关系 用到了
  • 订单管理实现功能

    一 目标以及实现思路 商家 查看订单 发货 订单状态 1未发货 2已发货 3已签收 4已撤单 默认值1 订单项查看 思路 订单表的查询 将订单表的订单状态由1改为2通过订单的id到订单项表查询出对应的订单 买家 查看订单 撤单 签收 思路
  • Cocos2d-x 3.x部署

    这是我第一次写技术文章 这里只是分享一下我的部署经验 请各位参考 谢谢 我简单的写写我的部署步骤 只参考了官方的readme 环境 win7 64位 1 打开控制台cmd 2 进入到cocos2d x引擎目录 键入setup py 键入的前
  • CSAPP Lab4- PerfLab

    代码优化 typedef struct unsigned short red R value unsigned short green G value unsigned short blue B value pixel 图像用一维数组表示
  • 树莓派4B安装64位系统 以及基础配置

    最近在使用一个SDK时发现只提供了linux64版本的 而我用的树莓派系统是32位的 查了一下发现官方有提供64位版本的 开始了重装系统 总结了一下基础配置包括换源 远程连接 中文输入法 摄像头等配置 大纲 准备工具 1 SD卡格式化 2
  • “起床困难综合症”「NOI2014」【题解】

    起床困难综合症 洛谷 题目 题目描述 drd的防御战线由n扇防御门组成 每扇防御门包括一个运算op和一个参数t 其中运算一定是OR XOR AND中的一种 参数则一定为非负整数 如果还未通过防御门时攻击力为x 则其通过这扇防御门后攻击力将变