题目描述

输入若干个nnn,对于每一个nnn,输出最小的一个比它大mmm,并且使它们在二进制下拥有相同的111

题目分析

我们可以这样处理每一个nnn:先加上这个nnn的lowbitlowbitlowbit,然后再从最末位逐个添加111直到111的个数相等。以题目中的例子来说明,787878的二进制是100111010011101001110,先加上它的lowbitlowbitlowbit即101010得到101000010100001010000,然后再逐个添加末位的111使它111的个数与原数一样得到101001110100111010011即838383。

Code

#include<iostream>
#include<cstdio>
#define lb(x) ((x)&(-(x)))
#define ll long long
using namespace std;
ll n;
ll cot(ll x){ll sum=0;while(x){x-=lb(x);++sum;}return sum;
}
ll solve(ll x){ll res=lb(x),num=cot(x);x+=res;if(cot(x)==num)return x;ll i=1;while(cot(x)!=num){x+=i;i<<=1;}return x;
}
int main(){scanf("%lld",&n);while(n!=0){printf("%lld\n",solve(n));scanf("%lld",&n);}return 0;
}

YBT 1223 An Easy Problem相关推荐

  1. 信息学奥赛一本通 1223:An Easy Problem | OpenJudge NOI 4.6 1455:An Easy Problem

    [题目链接] ybt 1223:An Easy Problem OpenJudge NOI 4.6 1455:An Easy Problem [题目考点] 1. 数制 2. 枚举 [解题思路] 解法1 ...

  2. 信息学奥赛一本通(1223:An Easy Problem)

    1223:An Easy Problem 时间限制: 1000 ms         内存限制: 65536 KB 提交数: 5835     通过数: 4111 [题目描述] 给定一个正整数N,求最 ...

  3. POJ 2826 An Easy Problem?! 叉积求多边形面积 【计算几何】

    ACM博客_kuangbin POJ 2826 An Easy Problem?! An Easy Problem?! Time Limit: 1000MS   Memory Limit: 65536 ...

  4. 2019年ICPC银川区域赛 Easy Problem(简单莫比乌斯函数 + 欧拉降幂)

    Easy Problem ∑a1=1m∑a2=1m∑a3=1m⋯∑an−1m∑anm[gcd(a1,a2,a3,-,an−1,an)==d](a1,a2,a3,-,an−1,an)k=dkd∑a1=1 ...

  5. 数论六之计算几何——An Easy Problem,Ancient Berland Circus,Open-air shopping malls

    可检验模板正确度 An Easy Problem?! Ancient Berland Circus Open-air shopping malls An Easy Problem?! problem ...

  6. 【UVA】11991 Easy Problem from Rujia Liu? (整数v第k次出现在什么位置)

    https://vjudge.net/problem/UVA-11991 题目大意:就是给你一个序列,然后给出k和v,看整数v第k次出现在该序列的什么位置,没有的话就输出0 结构体(略复杂): #in ...

  7. 数学--数论-- HDU 2601 An easy problem(约束和)

    Problem Description When Teddy was a child , he was always thinking about some simple math problems ...

  8. CodeForces - 1058A. In Search of an Easy Problem

    这题,全零是esay有1是hard,真难呀. #include<bits/stdc++.h> using namespace std; int main(){int n,i,x,flag= ...

  9. leetcode easy problem set

     *勿以浮沙筑高台* 持续更新........     题目网址:https://leetcode.com/problemset/all/?difficulty=Easy 1. Two Sum [4m ...

最新文章

  1. 037——VUE中表单控件处理之表单修饰符:lazy/number/trim
  2. 小程序获取form_id 与 小程序获取openid
  3. BZOJ3675 [APIO2014]序列分割
  4. LinkedHashMap的使用
  5. 道理我都懂,但你到底为什么偏偏喜欢咬我??
  6. Mysql中int(M)的含义
  7. 为什么有的网站要改服务器才能打开吗,为什么有些网站进不了,怎样设置DNS才能进 – 手机爱问...
  8. 基于Openstack的企业级实例在360的落地实战
  9. 关于github的一些问题汇总
  10. EXCEL 宏 拆分数据表 VBA 视频教程下载
  11. java ssm网上超市购物管理系统
  12. linux下firefox浏览器的flash版本过低解决方案
  13. 解决东方财富数据接口激活后仍显示reactive的问题
  14. 简洁易懂的配置Go开发环境MacOS
  15. 2022国赛数学建模思路 - 复盘:生成规划模型
  16. php解决中文乱码,PHP中文乱码的常见解决方法总结
  17. Mentor Graphics ModelSim SE 10.5官方原版+完美破解
  18. LocalDate 向后推几个月的日期如何计算
  19. 清华大学计算机系2020年夏令营,2018年清华大学全校50个保研夏令营通知信息大汇总...
  20. MySQL树形结构设计

热门文章

  1. HTTP Status 404错误分析及解决方法
  2. 数据存储策略——lsm-tree
  3. java cron 每100分钟执行一次
  4. Spark创建DataFrame
  5. 多思计算机组成原理实验八:简单模型机实验
  6. 凑齐三块国字号“招牌”,长沙要召唤智能汽车产业的“神龙”了
  7. 单分散磁性二氧化硅微球粒径100nm,浓度可调
  8. golang的 data race 分析
  9. stylish网站换肤与网站分析妙用
  10. 奥斯卡 | hulu拿到小金人!迪士尼共斩获六项