博客
关于我
869. Reordered Power of 2
阅读量:422 次
发布时间:2019-03-06

本文共 895 字,大约阅读时间需要 2 分钟。

Starting with a positive integer N, we reorder the digits in any order (including the original order) such that the leading digit is not zero.

Return true if and only if we can do this in a way such that the resulting number is a power of 2.

 

Example 1:

Input: 1Output: true

Example 2:

Input: 10Output: false

Example 3:

Input: 16Output: true

Example 4:

Input: 24Output: false

Example 5:

Input: 46Output: true

 

Note:

  1. 1 <= N <= 10^9

 

Approach #1: Math. [Java]

class Solution {    public boolean reorderedPowerOf2(int N) {        int c = count(N);        for (int i = 0; i < 32; ++i) {            if (count(1 << i) == c) return true;        }        return false;    }        public int count(int x) {        int ret = 0;        for (; x > 0; x /= 10)            ret += (int)Math.pow(10, x % 10);        return ret;    }}

 

Analysis:

The way that use / and % to count the digit is awesome.

  

Reference:

 

转载地址:http://udtuz.baihongyu.com/

你可能感兴趣的文章
mysql执行计划
查看>>
MySQL执行计划 EXPLAIN参数
查看>>
MySQL执行计划【explain】,看这一篇就够啦!
查看>>
Mysql执行计划字段解释
查看>>
mysql执行计划怎么看
查看>>
MySQL执行计划解读
查看>>
mysql执行顺序与索引算法
查看>>
mysql批量update优化_Mysql中,21个写SQL的好习惯,你值得拥有呀
查看>>
mysql批量update操作时出现锁表
查看>>
MYSQL批量UPDATE的两种方式
查看>>
mysql批量修改字段名(列名)
查看>>
MySQL批量插入数据遇到错误1213的解决方法
查看>>
mysql技能梳理
查看>>
MySQL报Got an error reading communication packets错
查看>>
Mysql报错Can‘t create/write to file ‘/tmp/#sql_3a8_0.MYD‘ (Errcode: 28 - No space left on device)
查看>>
MySql报错Deadlock found when trying to get lock; try restarting transaction 的问题解决
查看>>
MySQL报错ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘
查看>>
Mysql报错Packet for query is too large问题解决
查看>>
mysql报错级别_更改MySQL日志错误级别记录非法登陆(Access denied)
查看>>
Mysql报错:too many connections
查看>>