资讯专栏INFORMATION COLUMN

481. Magical String

toddmark / 315人阅读

摘要:题目链接找规律的题,比较无聊。根据前面的结果来得到下一个数字是多少。两个和分别指向字符串和字符串。

481. Magical String

题目链接:https://leetcode.com/problems...

找规律的题,比较无聊。根据前面的结果来得到下一个数字是多少。两个point:i和j 分别指向字符串和ocuurrence字符串。

public class Solution {
    public int magicalString(int n) {
        if(n == 0)  return 0;
        if(n <= 3)  return 1;
        
        int[] nums = new int[n];
        nums[0] = 1; nums[1] = nums[2] = 2;
        
        int i = 2, j = 3;
        int count = 1;
        while(j < n) {
            // current number: 1->2, 2->1
            int cur = 3 ^ nums[j-1];
            for(int k = 0; k < nums[i] && j < n; k++) {
                nums[j] = cur;
                // count 1
                if(nums[j] == 1) count++;
                j++;
            }
            i++;
        }
        
        return count;
    }
}

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/76399.html

相关文章

  • iOS开发:从新手到专家的一些建议

    摘要:我们常常会使用我们在或者苹果开发者论坛找到的各种代码片段,但是不要为了偷懒简单地复制粘贴你从网络上找到的代码,这样你很难彻底理解它。 showImg(http://segmentfault.com/img/bVbBIq); 虽然你有可能在一周内学习到iOS开发的本质,但想要精通iOS开发需则要花费更长的时间。问题是你如何从新手变成专家?在这篇文章中,我们主要就这个主题给出一些建议(如果...

    Lin_R 评论0 收藏0
  • SpringBoot非官方教程 | 第十三篇:springboot集成spring cache

    摘要:本文介绍如何在中使用默认的声明式缓存定义和接口用来统一不同的缓存技术。在使用集成的时候,我们需要注册实现的的。默认使用在我们不使用其他第三方缓存依赖的时候,自动采用作为缓存管理器。源码下载参考资料揭秘与实战二数据缓存篇快速入门 本文介绍如何在springboot中使用默认的spring cache 声明式缓存 Spring 定义 CacheManager 和 Cache 接口用来统一不...

    Magicer 评论0 收藏0
  • PHP比特币开发教程:在去中心化交易所OceanOne上挂单买卖比特币

    摘要:方案二挂单交易所是基于的去中心化交易所,它性能一流。完整的步骤如下检查比特币或的余额,钱包地址。比特币的到帐时间是个区块的高度,约分钟。 showImg(https://segmentfault.com/img/remote/1460000018419614?w=1200&h=659);上一章介绍了Exincore,你可以1秒完成资产的市价买卖。如果你想限定价格买卖,或者买卖一些exi...

    only_do 评论0 收藏0
  • PHP比特币开发教程:在去中心化交易所OceanOne上挂单买卖比特币

    摘要:方案二挂单交易所是基于的去中心化交易所,它性能一流。完整的步骤如下检查比特币或的余额,钱包地址。比特币的到帐时间是个区块的高度,约分钟。 showImg(https://segmentfault.com/img/remote/1460000018419614?w=1200&h=659);上一章介绍了Exincore,你可以1秒完成资产的市价买卖。如果你想限定价格买卖,或者买卖一些exi...

    APICloud 评论0 收藏0
  • 用 Go 构建一个区块链 -- Part 3: 持久化和命令行接口

    摘要:引言到目前为止,我们已经构建了一个有工作量证明机制的区块链。在今天的内容中,我们会将区块链持久化到一个数据库中,然后会提供一个简单的命令行接口,用来完成一些与区块链的交互操作。这同样也意味着,一个也就是区块链的一种标识符。 翻译的系列文章我已经放到了 GitHub 上:blockchain-tutorial,后续如有更新都会在 GitHub 上,可能就不在这里同步了。如果想直接运行代码...

    felix0913 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<