题目链接:https://codeforces.com/problemset/problem/1152/B

B. Neko Performs Cat Furrier Transform

题意:把x变成2^n-1,可以经过两种变换,

A:与2^m-1异或

B:x++

输出变换的次数以及变换过程中选择的m值

观察得到,最优m位应取最高的0位

代码如下:

#include<bits/stdc++.h>
using namespace std;
#define ll long long
#define mask 01 // 掩码bool ist(int n)
{n++;return (n > 0) && (!(n & (n - 1)));
}
int we(int n)
{int pos = 0;for(int i = 0;n;i++,n >>= 1){//cout << n << "*** " << endl;if((n & mask) != mask){pos = i + 1;}}return pos;
}
int main()
{int x,n,op = 0,co = 0;int ans[50];cin >> x;if(ist(x))cout << op << endl;else{for(int i = 0;i < 41;i++){if(i % 2)x++;else{ans[co++] = we(x);n = pow(2,we(x)) - 1;x = x ^ n;//cout << we(x) << "--" << n << endl;}op++;if(ist(x))break;}cout << op << endl;for(int i = 0;i < co;i++)cout << ans[i] << " ";cout << endl;}return 0;
}

CodeForces - 1152 B. Neko Performs Cat Furrier Transform相关推荐

  1. Neko Performs Cat Furrier Transform

    https://codeforces.com/contest/1152/problem/B 题解:模拟+贪心 /* *@Author: STZG *@Language: C++ */ #include ...

  2. 【CodeForces - 1152C 】Neko does Maths(数学数论,lcm,gcd性质)

    题干: 给出a,b<=1e9,你要找到最小的k使得lcm(a+k,b+k)尽可能小,如果有多个k给出同样的最小公倍数,输出最小的一个k. 解题报告: 因为题目中k太多了,先化简一下公式,假设a& ...

  3. CodeForces - 1152B二进制+思维

    [题目链接]Neko Performs Cat Furrier Transform [题目分析]要求将一个数字变成2n-1,通过尝试我们发现如果将最低位的全零位和对应的全一数字(例如11000对应的就 ...

  4. 卫星遥感—地块/边界提取相关论文

    作者:德怀特 链接:https://zhuanlan.zhihu.com/p/396874909 本文转载自知乎,作者已授权,未经许可请勿二次转载 Development of a Parcel-Le ...

  5. html 与 css 画哆啦A梦

    <!DOCTYPE html> <html><head><meta charset="utf-8"><title>哆啦A ...

  6. 纯CSS3画哆啦A梦

    <!DOCTYPE html> <html><head><meta charset="utf-8"><title>哆啦A ...

  7. pytorch数据增广albumentations

    pytorch数据增广albumentations 图像增强库官方英文介绍 安装 pip install albumentations 支持的目标检测bbox格式 pascal_voc [x_min, ...

  8. 你应该知道的一个PyTorch小技巧

    欢迎关注 "小白玩转Python",发现更多 "有趣" 使用过深度学习的人都知道,有时候调试模型是非常困难的.张量的不匹配.梯度爆炸,以及其他无数的问题都会让你 ...

  9. 使用Ubuntu下usb抓包工具(usbmon)进行数据抓取的一次记录

    前言 使用反汇编还原的库调试打印机网络作业设置,打印出来的日志与原库有出入,在usb传输处始终有偏差. 调用反汇编还原的库: DEBUG: Net_OnlyGetDataSizeFromReplyHd ...

  10. (人工智能)基于卷积神经网络的猫狗识别

    目录 一.实验条件 二.狗猫数据集的分类实验 1.运行程序:根据命名对图片分类 2.统计图片数量 三.猫狗分类的实例 1.导入相应的库 2.设置超参数 3.图像处理与图像增强 4.读取数据集和导入数据 ...

最新文章

  1. android studio 首字母提示 设置 大小写敏感
  2. 1154:LETTERS
  3. python 制作高斯mask_Python3 练手项目: 抓取豆瓣陈情令评论,并制作词云图
  4. html给网页加图片背景颜色,0035 如何设置网页背景图和在网页中插入图片
  5. 怎么用js动态 设置select中的某个值为选中项
  6. linux 文档编辑器 word,linux下vi编辑器命令大全
  7. 二叉树建立及中序遍历C++语言实现
  8. Linux系统瓶颈分析(经典)
  9. 0代码隐藏GroupedTableView上边多余的间隔
  10. r语言折线图_R语言基础入门视频教程——语法篇(完结)
  11. mysql 5.6.11.tar.gz_mysql5.6.11.tar.gz安装
  12. sql2005没有服务器名称
  13. 好书分享:TP311.561《深度学习入门:基于python的理论与实现》[日] 斋藤康毅 著
  14. WinForms时代结束,报表控件FastReport.NET开启FastReport.Core.Skia 时代!
  15. python下载哪个好_tensorflow用python哪个版本更好?
  16. 关于MATLAB的saveas函数错误
  17. 《Linux内核 学习笔记》--- 第二章 内存管理 2.9 mmap
  18. 转载:http://www.zzslxx.com/wmy/jy/Chap02/2.1.1.1.htm
  19. 功率放大器P1dB、P3dB和PSat指标释义
  20. 8086CPU结构与功能

热门文章

  1. android tv 国内使用,不花钱解决 Android TV 原生系统国内APP不显示图标
  2. 大龄程序员的8种出路
  3. 洛谷 P3110 [USACO14DEC]驮运Piggy Back spfa
  4. 我自是年少,昭华倾负,此情,此心,你可怜!
  5. 常见电脑故障之网络不通
  6. Android基于opencv4.6.0实现人脸识别功能
  7. 概率论与数理统计(3)--指数分布函数及其期望、方差
  8. 已解决:Torch not compiled with CUDA enabled
  9. 手写原笔迹输入_OneNote/YouNote原笔迹手写_原道 W8S_平板电脑评测-中关村在线
  10. 英文数字验证码识别包