LeetCode 869. 重新排序得到 2 的幂(排序 全排列)

1. 题目

给定正整数 N ,我们按任何顺序(包括原始顺序)将数字重新排序,注意其前导数字不能为零。

如果我们可以通过上述方式得到 2 的幂,返回 true;否则,返回 false。

示例 1:
输入:1
输出:true示例 2:
输入:10
输出:false示例 3:
输入:16
输出:true示例 4:
输入:24
输出:false示例 5:
输入:46
输出:true提示:
1 <= N <= 10^9

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/reordered-power-of-2
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

2. 解题

2.1 排序

  • 将数字转成字符串,并排序
  • 枚举32位的所有2的次幂的数,转字符串,并排序,跟上面字符串比较即可
class Solution {
public:bool reorderedPowerOf2(int N) {string origin(to_string(N));string powerTwo;sort(origin.begin(), origin.end());for(int i = 0; i < 32; ++i){powerTwo = to_string(1<<i);sort(powerTwo.begin(), powerTwo.end());if(powerTwo == origin)return true;}return false;}
};

在这里插入图片描述

2.2 全排列

class Solution {bool ans = false;
public:bool reorderedPowerOf2(int N) {string origin(to_string(N));bt(origin,0);return ans;}void bt(string str, int i){if(ans == true || i == str.size())return;for(int j = i; j < str.size(); ++j){swap(str[i],str[j]);if(str[0]!='0' && isPowerTwo(stoi(str)))ans = true;bt(str,i+1);swap(str[i],str[j]);}}bool isPowerTwo(int n){return (n&(n-1)) == 0;}
};

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/478067.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Spark性能优化指南——基础篇

在大数据计算领域&#xff0c;Spark已经成为了越来越流行、越来越受欢迎的计算平台之一。Spark的功能涵盖了大数据领域的离线批处理、SQL类处理、流式/实时计算、机器学习、图计算等各种不同类型的计算操作&#xff0c;应用范围与前景非常广泛。在美团•大众点评&#xff0c;已…

会议交流 | 京东硅谷首席科学家领衔,图机器学习峰会火热开启!

2021年10月10日&#xff0c;DataFunSummit&#xff1a;图机器学习在线峰会将如约而至。本次峰会的形式再次创新&#xff0c;由图与推荐与DataFun联合策划、京东硅谷研发中心 首席科学家 吴凌飞博士与腾讯大数据 AI平台总监 陶阳宇博士领衔参与&#xff0c;既包括前沿的学术分享…

召回 粗排 精排,如何各司其职?

文 | 水哥源 | 知乎saying1.AB测试几乎是系统改进的不二法则&#xff0c;算法做AB&#xff0c;开发做AB&#xff0c;产品做AB&#xff0c;运营更要做AB2.召回有点像一个甩锅侠&#xff0c;我不管我给的准不准&#xff0c;我就管我把潜在的能投的都吃进来就行3.其他环节想要提升…

LeetCode 558. 四叉树交集(递归)

1. 题目 四叉树是一种树数据&#xff0c;其中每个结点恰好有四个子结点&#xff1a;topLeft、topRight、bottomLeft 和 bottomRight。四叉树通常被用来划分一个二维空间&#xff0c;递归地将其细分为四个象限或区域。 我们希望在四叉树中存储 True/False 信息。四叉树用来表示…

Online Learning算法理论与实践

背景 Online Learning是工业界比较常用的机器学习算法&#xff0c;在很多场景下都能有很好的效果。本文主要介绍Online Learning的基本原理和两种常用的Online Learning算法&#xff1a;FTRL&#xff08;Follow The Regularized Leader&#xff09;[1]和BPR&#xff08;Bayesia…

在斯坦福,做 Manning 的 phd 要有多强?

文 | 付瑶编 | 小轶博士的毕业论文是我们博士学位教育重要的一环&#xff0c;不仅仅是获得学位的最后一个难关&#xff0c;也是读博期间工作的总结展现。那么一个优秀的博士在读博期间会做出多少成果&#xff1f;ta 的博士论文又长什么样&#xff1f;今天&#xff0c;让我们打开…

LeetCode 655. 输出二叉树(二叉树高度二叉树遍历)

1. 题目 在一个 m*n 的二维字符串数组中输出二叉树&#xff0c;并遵守以下规则&#xff1a; 行数 m 应当等于给定二叉树的高度。列数 n 应当总是奇数。根节点的值&#xff08;以字符串格式给出&#xff09;应当放在可放置的第一行正中间。根节点所在的行与列会将剩余空间划分…

开源开放 | 计算机科学示意图问答数据集CSDQA(CCKS2021)

OpenKG地址&#xff1a;http://openkg.cn/dataset/csdqa开源地址&#xff1a;http://zscl.xjtudlc.com:888/CSDQA/开放许可协议&#xff1a;CC BY-SA 4.0 &#xff08;署名相似共享&#xff09;贡献者&#xff1a;西安交通大学(王绍伟、张玲玲、杨祎、胡欣、秦涛、魏笔凡、刘均…

数据驱动精准化营销在大众点评的实践

精准化营销一直以来都是互联网营销业务在细分市场下快速获取用户和提高转化的利器。在移动互联网爆发的今天&#xff0c;数据量呈指数增长&#xff0c;如何在移动和大数据场景下用数据驱动进行精准营销&#xff0c;从而提高营销效能&#xff0c;成为营销业务部门的主要挑战之一…

LeetCode 1104. 二叉树寻路(数学位运算)

1. 题目 在一棵无限的二叉树上&#xff0c;每个节点都有两个子节点&#xff0c;树中的节点 逐行 依次按 “之” 字形进行标记。 如下图所示&#xff0c;在奇数行&#xff08;即&#xff0c;第一行、第三行、第五行……&#xff09;中&#xff0c;按从左到右的顺序进行标记&am…

再介绍一篇最新的Contrastive Self-supervised Learning综述论文

文 | 对白源 | 对白的算法屋自监督学习&#xff08;Self-supervised learning&#xff09;最近获得了很多关注&#xff0c;因为其可以避免对数据集进行大量的标签标注。它可以把自己定义的伪标签当作训练的信号&#xff0c;然后把学习到的表示&#xff08;representation&#…

论文浅尝 | 重新审视语言模型与知识库的关系

笔记整理&#xff1a;陈卓&#xff0c;浙江大学在读博士&#xff0c;主要研究方向为低资源学习和知识图谱论文链接&#xff1a;https://arxiv.org/pdf/2106.09231发表会议&#xff1a;ACL 2021动机这篇文章类似于是批判性的文章&#xff0c;反驳的之前EMNLP2019的一篇文章knowl…

Spark在美团的实践

本文已发表在《程序员》杂志2016年4月期。 前言 美团是数据驱动的互联网服务&#xff0c;用户每天在美团上的点击、浏览、下单支付行为都会产生海量的日志&#xff0c;这些日志数据将被汇总处理、分析、挖掘与学习&#xff0c;为美团的各种推荐、搜索系统甚至公司战略目标制定提…

LeetCode 958. 二叉树的完全性检验(层序遍历)

1. 题目 给定一个二叉树&#xff0c;确定它是否是一个完全二叉树。 百度百科中对完全二叉树的定义如下&#xff1a; 若设二叉树的深度为 h&#xff0c;除第 h 层外&#xff0c;其它各层 (1&#xff5e;h-1) 的结点数都达到最大个数&#xff0c;第 h 层所有的结点都连续集中在…

论文浅尝 | 通过学习中间步骤的监督信号改进多跳知识库问答

笔记整理&#xff1a;陈永锐&#xff0c;东南大学博士论文链接&#xff1a;https://arxiv.org/pdf/2101.03737.pdf概述该论文处理多跳知识库问答&#xff08;KBQA&#xff09;任务&#xff0c;主要关注训练过程在中间步骤缺乏监督信号的挑战。由于这一挑战&#xff0c;多跳 KBQ…

打破情感分类准确率 80 分天花板!更加充分的知识图谱结合范式

文 | SeverusNLP的研究者们一直都在尝试&#xff0c;怎么样让模型像人类一样&#xff0c;学会“知识”。而最直观的想法莫过于将人类已经总结出来供机器解读的“知识体系”&#xff0c;及其嵌入表示作为额外的特征添加到NLP模型之中。至少&#xff0c;从直觉上看&#xff0c;将…

分布式块存储系统Ursa的设计与实现

引言 云硬盘对IaaS云计算平台有至关重要的作用&#xff0c;几乎已成为必备组件&#xff0c;如亚马逊的EBS(Elastic Block Store)、阿里云的盘古、OpenStack中的Cinder等。云硬盘可为云计算平台带来许多优良特性&#xff0c;如更高的数据可靠性和可用性、灵活的数据快照功能、更…

LeetCode 919. 完全二叉树插入器(层序遍历队列)

1. 题目 完全二叉树是每一层&#xff08;除最后一层外&#xff09;都是完全填充&#xff08;即&#xff0c;结点数达到最大&#xff09;的&#xff0c;并且所有的结点都尽可能地集中在左侧。 设计一个用完全二叉树初始化的数据结构 CBTInserter&#xff0c;它支持以下几种操作…

开源开放 | 中文相对复杂词汇识别数据集RCWI-Dataset(CCKS2021)

OpenKG地址&#xff1a;http://openkg.cn/dataset/rcwi-dataset开放许可协议&#xff1a;CC BY-SA 4.0 &#xff08;署名相似共享&#xff09;贡献者&#xff1a;北京语言大学&#xff08;阙孟溪、张宇飞、于东&#xff09;1. 摘要中文领域的词汇复杂度评估资源较为匮乏&#x…

提升 NLP 实战技能的一点建议

作为最典型的 AI 领域之一&#xff0c;NLP 这些年也是越来越热门&#xff0c;基本上是各大厂必备了。随着 OpenAI 等技术的诞生、迁移学习等技术的成功应用&#xff0c;使得 NLP 技术在搜索、推荐、信息流、互联网金融、社交网络等领域不断发展壮大。与此同时&#xff0c;NLP 工…