• 题目
    他们的密码是一串整数,通过一张表里的信息映射成最终4位密码。表的规则是:n对应的值是矩阵X的n次方的左上角,如果这个数不足4位则用0填充,如果大于4位的则只输出最后4位。

  • 题解思路
    是一个变式的斐波那契数列
    初始化斐波那契数列,每一次获取对应数据,打印最后四位

  • 代码思路
    new一个数组——
    int[] nums = new int[10001];
    ( 注:10001防止越界

    初始化斐波那契数列——
    nums[1] = 1;
    nums[2] = 2;

    循环读取矩阵中的数字——

    for(int i=3; i<10001; i++){
    nums[i] = nums[i-1] + nums[i-2];
    //获取斐波那契数列的每个值
    nums[i] = nums[i]%10000;
    //目标为取四位中的最后一位
    }

    new Scanner(System.in)

    循环输入——

    while(sc.hasNext()){
    StringBuilder sb = new StringBuilder();
    int n = sc.nextInt();
    for(int i=0; i<n; i++){
    int xi = sc.nextInt();
    sb.append(String.format("%04d", nums[xi]));
    }
    System.out.println(sb);
    }

可查漏补缺的点

一、String和StringBuilder和StringBuffer——
  • 1.可变不可变

String:是字符串常量,在修改时不会改变自身,若修改,等于重新生成新的字符串对象。

StringBuffer:在修改时会改变对象自身,每次操作都是对StringBuffer对象自身进行修改,不是生成新的对象。使用场景:用于对字符串经常改变的情况下。主要方法有: append(),insert(),delete(),replace(),reverse()等。

  • 2.线程是否安全

String:对象定义后不可变,线程安全。

StringBuffer:是线程安全的(对调用方法加入同步锁),执行效率较慢,适用于多线程下操作字符串缓冲区大量数据。

StringBuilder:是线程不安全的,适用于单线程下操作字符串缓冲区大量数据。

  • 3.共同点:

StringBuilder和StringBuffer有共同的父类AbstractStringBuilder(抽象类)。

StringBuilder和StringBuffer的方法都会调用AbstractStringBuilder中的公共方法,如super.append(…),只是StringBuffer会在方法上加上synchronized关键字进行同步。

最后,如果程序不是多线程的,那么使用StringBuilder效率高于StringBuffer。

二、String.fomat()——创建格式化的字符串以及连接多个字符串对象

部分转载于:https://www.huaweicloud.com/articles/5b7fdd32d41a39c78ab6364097829deb.html

星际密码(编程题解)相关推荐

  1. 【编程题 】星际密码(详细注释 易懂)

    题目描述 题目链接:星际密码__牛客网      星际战争开展了100年之后,NowCoder终于破译了外星人的密码!他们的密码是一串整数,通过一张表里的信息映射成最终4位密码.表的规则是:n对应的值 ...

  2. 【算法刷题日记之本手篇】星际密码与数根

    ⭐️前面的话⭐️ 本篇文章介绍来自牛客试题广场的两道题题解,分别为[星际密码]和[数根],展示语言java. 小贴士:本专栏所有题目来自牛客->面试刷题必用工具

  3. 【牛客网】树根与星际密码

    目录 一.编程题 1.树根 2.星际密码 二.选择题 一.编程题 1.树根 链接:数根__牛客网 (nowcoder.com) 数根可以通过把一个数的各个位上的数字加起来得到.如果得到的数是一位数,那 ...

  4. 【牛客刷题22】数根与星际密码

    文章目录 题目一:数根 1.题目内容 2.思路 3.代码实现 题目二:星际密码 1.题目内容 2.思路 3.代码实现 题目一:数根 1.题目内容 题目链接:数根 2.思路     这里需要注意:    ...

  5. 【Java版oj】day25星际密码、数根

    目录 一.洗牌 (1)原题再现 (2)问题分析 (3)完整代码 二.数根 (1)原题再现 (2)问题分析 (3)完整代码 一.洗牌 (1)原题再现 星际密码__牛客网 星际战争开展了100年之后,No ...

  6. Java题目训练——星际密码和数根

    目录 一.星际密码 二.数根 一.星际密码 题目描述: 星际战争开展了100年之后,NowCoder终于破译了外星人的密码!他们的密码是一串整数,通过一张表里的信息映射成最终4位密码.表的规则是:n对 ...

  7. 刷题_25:星际密码 and 数根

    一.星际密码 题目链接: 星际密码 题目描述: 星际战争开展了100年之后,NowCoder终于破译了外星人的密码!他们的密码是一串整数,通过一张表里的信息映射成最终4位密码.表的规则是:n对应的值是 ...

  8. 刷题笔记之十一 (计算字符串的编辑距离+微信红包+年终奖+迷宫问题+星际密码+数根)

    目录 1. 计算字符串的编辑距离 2. 微信红包 3. 双向链表修改,比如插入新的结点,一定要画图 4. 一颗完全二叉树第六层有9个叶结点(根为第一层),则结点个数最多有109 5. 将N条长度均为M ...

  9. 刷题日记【第十三篇】-笔试必刷题【数根+星际密码+跳台阶扩展问题+快到碗里来】

    刷题日记[第十三篇]-笔试必刷题[数根+星际密码+跳台阶扩展问题+快到碗里来] 1.方法区在JVM中也是一个非常重要的区域,它与堆一样,是被[线程共享]的区域. 下面有关JVM内存,说法错误的是?(c ...

  10. 星际密码———递归式

    文章目录 1 题目 2 解析 3 参考代码 1 题目 星际密码 时间限制 1000 ms 内存限制 32768 KB 代码长度限制 100 KB 判断程序 Standard (来自 小小) 题目描述 ...

最新文章

  1. 【Java】 链表的回文结构
  2. 蚂蚁金服“刷脸”支付技术解读:错误率低于百万分之一
  3. java实现责任链模式_我的Java设计模式-责任链模式
  4. WebService它CXF注释错误(两)
  5. linux e盘路径,Linux添加路径到PATH环境变量
  6. docker 进入容器命令_Docker容器常用命令分享,赶紧收藏
  7. 删除Windows 7自动创建的隐藏分区
  8. 识别Win10系统两种方法
  9. spring揭秘 读书笔记 六 bean的一生
  10. mysql 右模糊_面试小知识:MySQL索引相关
  11. lambda表达式python_python lambda表达式用法
  12. 如何在新系统下重玩老游戏
  13. 计算机ppt密码是什么,PPT怎么设置密码 PPT密码设置教程-电脑教程
  14. 关于代码运行速度与cpu关系的一点小事
  15. 什么是数据运营?数据运营是做什么的?
  16. ES3之cookie
  17. 雅虎终于死了:从市值 1000 亿到贱卖 48 亿,到最后连名字都没保住
  18. GoLang之浅析unsafe.Pointer与uintptr
  19. java零基础学习笔记(代码+注解+练习)_面向对象OOP
  20. tomcat配置-超有效-80岁奶奶用了都说好

热门文章

  1. Win 10操作系统与艾字节大数据的密切关系
  2. 六度空间-用图进行BFS遍历
  3. 联想微型计算机3000 c305,桌面一体机新宠 联想3000 C305评测
  4. 下载哈姆雷特英文版并实现文本词频统计以及生成词云图
  5. 热插拔技术--以ADM1177为例说明
  6. python实现KDJ指标模型 量化策略 python 策略开发
  7. Educational Codeforces Round 124 (Rated for Div. 2)D. Nearest Excluded Points
  8. 云计算 openstack 云平台搭建详细教程(基于 Vmware 虚拟机搭建)
  9. pycharm make directory as excluded
  10. 我不是药神--格列卫诞生记