题解 P2431 【正妹吃月饼】
假如做这道题想着用如下朴实的模拟,那肯定要WA至少4个点。
#include <iostream>
#include <cstdio>
using namespace std;
typedef long long ll; int main() {
ll a, b, sum = , ans = ;
cin >> a >> b;
while(sum <= b) {
ans++;
sum = sum << | ;
}
cout << ans;
}
原因在于,数据大小。。。(2^63-1)
就比如说第二个点,输入数据如下:
140737488355336 140737488355456
能过才是奇迹。。。
那么显然我们应该使用位运算。
在这里先普及一下这玩意,尽管我觉得大家都会。。。
最基本的是左移和右移,分别是<<和>>。
他们具体的作用是将一个数的二进制位左移和右移。
然后有与或非亦或,即&,|,!,^
这几个很好理解,参考逻辑运算符就可以了。
知道了这下,那么新的思路就很明显了。
一位一位的看,如果是1就不管,如果是0就看改成1后符不符合题意。
最后再来统计1的数量。
程序如下:
#include <iostream>
#include <cstdio>
using namespace std; typedef long long ll; int main() {
int ans = ;
ll a, b;
cin >> a >> b;
while((a | (a + )) <= b) a |= a + ;
while(a) {
ans += a & ;
a >>= ;
} cout << ans;
}
【注意:long long一定要加!!!去掉了之后就只有80分了,两个点TLE!!】
题解 P2431 【正妹吃月饼】的更多相关文章
- 洛谷 P2431 正妹吃月饼 解题报告
P2431 正妹吃月饼 题目描述 今天是中秋节.\(uim\)带来了一堆大小不同且味道各异的月饼. 这些月饼的质量分别是\(1g\),\(2g\),\(4g\),\(8g\),\(16g\)....后 ...
- 洛谷【P2431】正妹吃月饼
二进制前置技能:https://www.cnblogs.com/AKMer/p/9698694.html 题目传送门:https://www.luogu.org/problemnew/show/P24 ...
- luogu2431 正妹吃月饼
题目大意 求一个正整数集合\(K\),使得\(\sum_{k\in K}2^k\in[A,B]\),且\(|K|\)最大.\(A,B\)大小在long long范围内. 思路 \(\sum_{k\in ...
- 中秋节福利---HTML5-玉兔吃月饼游戏
中秋节快来了.送大家点福利: HTML5-玉兔吃月饼游戏 效果图: 代码下载:点击这里!!
- ETO的公开赛T1《矿脉开采》题解(正解)(by Zenurik)
作为T1,当然是越水越好啦qwq 显然经目测可得,那个所谓的质量评级根本就没卵用,可以直接\(W_i = W_i^{V_i}\)累积到利润里面. 这样,本问题显然是一个"子集和"问 ...
- 题解报告:hdu1205吃糖果(插空法)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1205 Problem Description HOHO,终于从Speakless手上赢走了所有的糖果, ...
- 洛谷 题解 P1736 【创意吃鱼法】
题目大意 给出一个 \(n \times m \ (1 \leq n, \ m \leq 2500)\) 的 \(01\) 矩阵,让你在其中找到一个最大的子矩阵使得该子矩阵除了一条对角线上的数字均为 ...
- [题解向] 正睿Round435
10.14 Link 唔,这一场打得不好.获得了\(\rm 75pts/300pts\)的得分,但是居然可以获得\(\rm 27/69\)的名次,也不至于不满意--毕竟是真不会233 \(\rm T1 ...
- [题解向] 正睿Round409
\(\rm Link\) 然而泥萌没有权限是看不了题目的233. \(\rm T1\) 大概就是个map,脑残出题人认为(x,x)不属于有序二元组,我可qtmd.于是只拿了\(\rm 60pts\) ...
随机推荐
- 《汇编语言(第三版)》pushf 和 popf 指令,以及标志寄存器在 Debug 中的表示
pushf 和 popf pushf 的功能是将标志寄存器的值压栈,而 popf 是从栈中弹出数据,输入标志寄存器. pushf 和 popf,为直接访问寄存器提供了方法. 格式 pushf popf ...
- 51nod 1267 4个数和为0 思路:哈希map+避免重复的点
题目: 总结大佬们的思路: 思路1:所有数两两求和,存入map中,每次判断有没有相反数被标记过. 思路2:对所有数排序,排完所有数两两求和,结果正好是排好序的.然后扫一遍,二分查找看之前有没有相反数存 ...
- OSI概述问答
1. 网络中体系结构的七层.四层.五层是怎么回事? OSI(Open System Interconnection)开放系统互连参考模型的七层协议体系结构:概念清楚,理论比较完整,但既复杂又不用 ...
- vue非空校验
效果图 实现代码 //页面html <div> <ul class="listinfo"> <li> <span class=" ...
- [原创]Linux 下 redis 链接一次
刚接触 Linux ,在 Linux 下安装 redis 链接redis 出现了以下问题 Could not connect to Redis at 127.0.0.1:6379: Connecti ...
- Javascript系列——对象元素的数组去重实现
概要 这是一篇记录文,记录数组操作对象去重的实现. 需求 有这样一个数组 [{ _id: 123, name: '张三' },{ _id: 124, name: '李四' },{ _id: 123, ...
- Linux学习总结(14)——Linux权限控制
linux中,权限的学习是必不可少的,不论是作为一名运维工程师或者是单一的管理者,学习好linux中的权限控制,你就可以保护好自己的隐私同时规划好你所管理的一切. 权限的学习是很多的,不要认为自己已经 ...
- ZOJ 3369 Saving Princess
Saving Princess Time Limit: 1000ms Memory Limit: 32768KB This problem will be judged on ZJU. Origina ...
- Qt之自定义布局管理器(QBorderLayout)
简述 QBorderLayout,顾名思义-边框布局,实现了排列子控件包围中央区域的布局. 具体实现要求不再赘述,请参考前几节内容. 简述 实现 效果 源码 使用 实现 QBorderLayout主要 ...
- Beat 'Em Up Game Starter Kit (横版格斗游戏) cocos2d-x游戏源代码
浓缩精华.专注战斗! 游戏的本质是什么?界面?养成?NoNo! 游戏来源于对实战和比赛的模拟,所以它的本源就是对抗.就是战斗! 是挥洒热血的一种方式! 一个游戏最复杂最难做的是什么?UI?商城? ...