【LeetCode】第412题——Fizz Buzz(难度:简单)_leetcode 412_Se7en_Dayz的博客-程序员宅基地

技术标签: java  LeetCode题解  leetcode  

【LeetCode】第412题——Fizz Buzz(难度:简单)

题目描述

写一个程序,输出从 1 到 n 数字的字符串表示。

  1. 如果 n 是3的倍数,输出“Fizz”;

  2. 如果 n 是5的倍数,输出“Buzz”;

3.如果 n 同时是3和5的倍数,输出 “FizzBuzz”。

  1. 示例:
    n = 15,
    返回:
    [ “1”, “2”, “Fizz”, “4”, “Buzz”, “Fizz”, “7”, “8”, “Fizz”, “Buzz”, “11”, “Fizz”, “13”, “14”, “FizzBuzz”]

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

解题思路

对3和5取余即可。

如果题目上不止两个数,如3–>Fizz、5–>Buzz、7–>Jazz…,可以使用HashMap存储{3: Fizz、5: Buzz、7: Jazz…}并进行遍历。

代码详解

class Solution {
    
    public List<String> fizzBuzz(int n) {
    
        List<String> list = new LinkedList<>();
        for(int i = 1; i <= n; ++i) {
    	// 注意是1-n
            String s = "";
            // 注意由于是字符串拼接,因此判断3和5的顺序不能颠倒
            if(i % 3 == 0) {
    
                s += "Fizz";
            }
            if(i % 5 == 0) {
    
                s += "Buzz";
            }
            if(s.length() == 0) {
    	// 若既不能被3整除又不能被5整除,s就是字符串化的数字i
                s = String.valueOf(i);
            }
            list.add(s);	// 添加至list中
        }
        return list;
    }
}

注意点

  • 如果用字符串拼接的方式来构造字符串,整除的判断顺序便只有一种,不能乱来。
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_43536930/article/details/112846595

智能推荐

Windows 下单机最大TCP连接数_gong_xucheng的博客-程序员宅基地

在做Socket 编程时,我们经常会要问,单机最多可以建立多少个 TCP 连接,本文将介绍如何调整系统参数来调整单机的最大TCP连接数。Windows 下单机的TCP连接数有多个参数共同决定,下面一一介绍:最大TCP连接数[HKEY_LOCAL_MACHINE \System \CurrentControlSet \Services \Tcpip \Parameters]TcpNu

C语言 生成随机数 分析给定范围的随机数生成公式_随机数推算_皮酱的博客-程序员宅基地

1. 概述本文讲述 rand,srand,以及产生固定范围内的随机数。2. rand 函数可以使用 <stdlib.h> 头文件中的 rand() 函数来生成随机数,随机生成一个位于 0 ~ RAND_MAX 之间的整数。它的用法如下:int rand ();为什么不使用 random() 函数?具体用例:#include <stdio.h>#include <stdlib.h>int main(){ int randnum = rand();_随机数推算

DID边际分析:让政策评价结果更加丰满_政策更新 did_arlionn的博客-程序员宅基地

原文链接:https://www.lianxh.cn/news/cb47a7a440d80.html目录1. 前言 2. margins 命令介绍 3. DID 的边际分析 4. 对 margin 结果的修正 5. 文中使用的主要代码 本文来自连享会专题 - 倍分法 DID1. 前言本文在翻译下文的基础上进行了一些修改和补充:Wheeler, Andrew. P., Some Stata notes – Difference-in-Difference ._政策更新 did

常用的javascript小技巧[收藏] _hzf100的博客-程序员宅基地

让文本输入框只能输入数字 onkeypress="if (event.keyCode 57) event.returnValue = false;"事件源对象 event.srcElement.tagName event.srcElement.type ………………………………捕获释放 event.srcElement.setCapture(); event.srcElement.rele

深入了解依赖注入3种服务的不同_林烈涛的博客-程序员宅基地

ASP.NET.Core中有3中不同依赖注入AddSingleton(),中文翻译:添加单例AddScoped(),中文翻译:添加范围AddTransient(),中文翻译:添加瞬态1、AddSingleton()方法第一次请求是创建服务的单个实例,并在需要改服务的所以地方都会复用改方法应用程序在整个生命周期内的所有请求都会使用相同的实例例子//依赖注入<接口,数据源>services.AddSingleton<IStudentRepository, MockStud

OpenCV:创建Mat矩阵的几种常用方法_cv::mat构建 void* data,_欧阳磊的博客-程序员宅基地

目录创建二维矩阵创建多维矩阵创建特殊矩阵创建二维矩阵默认构造函数函数原型:Mat();示例:Mat m(480,640,CV_8UC3);Mat n;n=m;创建无颜色矩阵函数原型:void Mat::create(int _rows, int _cols, int _type)void Mat::create(Size _s..._cv::mat构建 void* data,

随便推点

【Maven】实际构建SSM框架和用maven构建的详细区别_ssm和mvvm哪个好_Knove的博客-程序员宅基地

工具:IDEA一个新电脑,打算配置个SSM框架。本来 打算自己下Jar包自己配,自力更生嘛!0x01 --自己配环境好,既然是Spring MVC+Spring+MyBatis .那么就从Sping开始配吧打开Spring官网:https://spring.io/嗯……最新的官网找不到在哪下载jar包……九牛二虎百度后在spring的github里找到了_ssm和mvvm哪个好

OCA/OCP Oracle 数据库12c考试指南读书笔记:第4章: Using Oracle Restart_oracle 12c oracle restart_dingdingfish的博客-程序员宅基地

目标:Use Oracle Restart to Manage ComponentsOracle Restart 是GI的非集群版,也是GI提供的服务。资源由GI管理,所有的资源都会在OLR(Oracle Local Registry)中注册,从而可以被Oracle Restart管理。一些资源是在安装过程中自动(隐含)注册的,例如用dbca建立的数据库,一些需要主动注册,例如手工方式创建的数..._oracle 12c oracle restart

山东大学数据库实验答案四、五、六_5. 将pub用户下表student_41及数据复制到主用户的表test4_05中,使用alter _0wzc0的博客-程序员宅基地

实验四1. 将pub用户下表student_41及数据复制到主用户的表test4_01中,使用alter table语句为表增加列:"总成绩:sum_score"。使用update语句,利用pub.student_course、pub.course,统计 "总成绩";SQL:create table test4_01 as(select *from pub.student_4..._5. 将pub用户下表student_41及数据复制到主用户的表test4_05中,使用alter table语

stm32h750电路_一起学习电路城上10个STM32H750最小系统及经典电路设计方案吧_带虾条酱的博客-程序员宅基地

H7系列是ST最新的高性能ARM微处理器产品线,而STM32H750VBT6是H7产品线中性价比最高的产品。它具有H7系列的所有功能,而且价格合适,非常适合高性能嵌入式应用程序开发。整理了电路城上10个STM32H750最小系统及经典电路设计方案,一起学习吧。1、STM32H750VBT6 + ESP8266+OV2640开发板电路方案(pcb+例程)这个开发板使用STM32H750VBT6 为..._stm32h750

cisco端口聚合配置_思科交换机端口聚合配置 关闭一个聚合接口 起不来_qq_38023774的博客-程序员宅基地

实验目标理解端口聚合基本原理; 掌握一般交换机端口聚合的配置方法;实验背景端口聚合(又称为链路聚合),将交换机上的多个端口在物理上连接起来,在逻辑上捆绑在一起,形成一个拥有较大宽带的端..._思科交换机端口聚合配置 关闭一个聚合接口 起不来

Linux网络编程--7. TCP/IP协议_liangjm_1984的博客-程序员宅基地

你也许听说过TCP/IP协议,那么你知道到底什么是TCP,什么是IP吗?在这一章里面,我们一起来学习这个目前网络上用最广泛的协议. 7.1 网络传输分层 如果你考过计算机等级考试,那么你就应该已经知道了网络传输分层这个概念.在网络上,人们为了传输数据时的方便,把网络的传输分为7个层次.分别是:应用层,表示层,会话层,传输层,网络层,数据链路层和物理层.分好了层以后,传输数据时,上一层如果要数据