牛客 算法题 golang语言实现

news2024/11/16 11:37:42

题目

HJ101 输入整型数组和排序标识,对其元素按照升序或降序进行排序

描述
输入整型数组和排序标识,对其元素按照升序或降序进行排序

数据范围: 
1
≤
�
≤
1000
 
1≤n≤1000  ,元素大小满足 
0
≤
�
�
�
≤
100000
 
0≤val≤100000 
输入描述:
第一行输入数组元素个数
第二行输入待排序的数组,每个数用空格隔开
第三行输入一个整数0或1。0代表升序排序,1代表降序排序

输出描述:
输出排好序的数字

示例1
输入:
8
1 2 4 9 3 55 64 25
0
复制
输出:
1 2 3 4 9 25 55 64
复制
示例2
输入:
5
1 2 3 4 5
1
复制
输出:
5 4 3 2 1

golang

package main

import (
	"bufio"
	"fmt"
	"os"
	"sort"
	"strconv"
	"strings"
)

func main() {
    input:=make([]int,0)
    length:=0
    orderType:=0
    scanner:=bufio.NewScanner(os.Stdin)
    for scanner.Scan(){
        line:= scanner.Text()
        arr:=strings.Fields(line)
        for _,v:=range arr{
            num,_:=strconv.Atoi(v)
            input = append(input, num)
        } 
    }

    length =input[0]
    orderType = input[len(input)-1]
    
    result:=input[1:len(input)-1]
    sort.Ints(result)
    if orderType==1{
         sort.Sort(sort.Reverse(sort.IntSlice(result)))
    }

     for i,v:=range result{
        if i==(length-1){
            fmt.Printf("%d", v)
        }else{
            fmt.Printf("%d ", v)
        }
        
    }
    
}

运行结果

result

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

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

相关文章

同为科技(TOWE)工业级炫彩桌面PDU让你的桌面更整洁

在当今社会,人们越来越注重生活品质与工作效率,桌面PDU插座是安全便捷的桌面电源设备,兼顾了工业机柜PDU功能、输出方式多样化与C端电气设备高颜值、实用性的特点,可满足消费者日常多方位用电需求。同为科技(TOWE&…

应用密码学期末复习(1)

学习资料 应用密码学总结_应用密码学知识点总结-CSDN博客 应用密码学期末复习知识点总结_5的36次方mod97__PriDe的博客-CSDN博客 【密码学】密码学期末考试速成课,不挂科!!#高数帮_哔哩哔哩_bilibili 目录 学习资料 第一章 概述 1.1信息…

vue2通过权限控制tab标签显示和隐藏

vue2通过权限控制tab标签显示和隐藏 1、前言2、v-if实现自定义控制 1、前言 在开发过程中,我们可能会遇到这样一个场景:根据不同权限对tab栏内容进行控制,这时候用自定义指令v-permission就达不到我们想要的效果,其是将当前节点的…

FinOps和DevOps的未来会怎样?

FinOps(或财务运营)是一种文化实践,它将财务责任引入云的可变支出模型。这是一种将系统、最佳实践和文化相结合的战略方法,可提高组织了解云成本并做出明智决策的能力。 本质上,FinOps 是一个管理云运营费用&#xff…

①实现基于session的登录流程:发送验证码、登录注册、校验登陆状态

个人简介:Java领域优质创作者;阿里云技术博主、星级博主、专家博主;正在Java学习的路上摸爬滚打,记录学习的过程~ 个人主页:.29.的博客 学习社区:进去逛一逛~ 登录功能 实现 实现基于session的登录流程&…

「阿里巴巴」裁撤量子实验室!

据内部消息,阿里巴巴达摩院由于预算及盈利等原因,已经撤裁旗下量子实验室。此次,共计裁减30余人。 达摩院官网已撤下量子实验室的相关介绍页面。上图:早先关于量子实验室的相关介绍;下图:现在达摩院官网“实…

招标采购软件如何让采购变得更轻松?

企业总是希望让采购流程更简单,选择更好的供应商,花更少的钱。采购软件的普及使原材料和服务的采购变得更容易,向供应商(甚至是全球供应商)索取信息的流程已大大简化。包括招标采购软件在内的采购技术已成为企业运营不…

11.Spring源码解析-beans解析

很明显又调用回来了,是典型的递归调用

璞华大数据产品入选中国信通院“铸基计划”

武汉璞华大数据技术有限公司HawkEye设备数字化管理平台产品,凭借优秀的产品技术能力,通过评估后,入选中国信通院“铸基计划”《高质量数字化转型产品及服务全景图(2023)》的工业数字化领域。 “铸基计划”是中国信通院…

MySQL数据库入门到大牛_基础_17_触发器

文章目录 1. 触发器概述2. 触发器的创建2.1 创建触发器语法2.2 代码举例 3. 查看、删除触发器3.1 查看触发器3.2 删除触发器 4. 触发器的优缺点4.1 优点4.2 缺点4.3 注意点 5. 第十七章练习 在实际开发中,我们经常会遇到这样的情况:有 2 个或者多个相互关…

文章采集器-免费的文章采集工具大全

在当今信息爆炸的时代,获取有效的信息变得尤为关键。随之而来的问题是,如何高效地从海量信息中筛选出我们所需的内容呢?文章采集器应运而生,它就像是信息世界中的一把神奇的筛子,能够帮助我们从大海一般的信息中捞取我…

linux 内核线程

内核线程类似于用户进程,通常用于并发处理些工作,它是一种在内核空间实现后台任务的方式,并且可以参与时间片轮转调度。 内核线程可以进行繁忙的异步事件处理,也可以睡眠等待某事件的发生,内核线程可以访问内核函数和…

【hive-design】hive架构详解:描述了hive架构,hive主要组件的作用、hsql在hive执行过程中的底层细节、hive各组件作用

文章目录 一. Hive Architecture二. Metastore1. Metastore Architecture2. Metastore Interface 三. Compiler四. hive架构小结 本文主要讨论了 描述了hive架构,hive主要组件的作用详细描述了hsql在hive执行过程中的底层细节描述了hive各组件作用 一. Hive Archite…

Authing CEO 谢扬来信 |我的原则

从忙碌的工作中短暂抽身,有很多感想,不吐不快,借此机会,倾我所有,诉我原则。 原则一:坚强信念,坚定意志 商人大多「无利不起早」,而创业者的反馈周期比商人长非常非常多。 相比「商品…

微服务知识大杂烩

1.什么是微服务? 微服务(Microservices)是一种软件架构风格,将一个大型应用程序划分为一组小型、自治且松耦合的服务。每个微服务负责执行特定的业务功能,并通过轻量级通信机制(如HTTP)相互协作。每个微服务可以独立开发、部署和扩展,使得应用程序更加灵活、可伸缩和可…

认证授权常见方式

认证授权 认证 (Authentication) 和授权 (Authorization)的区别是什么? 说简单点就是: 认证 (Authentication): 你是谁。授权 (Authorization): 你有权限干什么。 稍微正式点(啰嗦点)的说法就是&#x…

15亿元!类ChatGPT平台AI21 Labs,获巨额融资

著名生成式AI平台AI21 Labs在官网宣布,获得2.08亿美元(约15亿元)C系列融资,估值14亿美元(约100亿)。 本次由英特尔旗下风投机构、康卡斯特旗下风投机构、现有投资者Ahren Innovation Capital等联合投资&am…

使用Zoho Projects项目管理系统进行研发排期的策略与方法

研发排期旨在有序地填充待开发的就绪队列,明确最近的发布计划,让准备就绪的需求如行云流水般进入开发阶段。 使用Zoho Projects项目管理系统进行研发排期的步骤如下: 1.创建项目: 登录Zoho Projects账户,创建一个新项…

java学习part19接口

113-面向对象(高级)-接口的使用_哔哩哔哩_bilibili 1.接口概念 个人认为是一种能力,某个类是否具有某种能力。一个类实现了一个接口就相当于学会了某些功能。 2.使用 接口里的属性都是全局常量public static final,即便不写也会自动加上。 3.多实现 4.接…

wsl 命令详解

WSL 简介 WSL全称 Windows Subsystem for Linux ,是微软开发的一个运行在Windows上的兼容层,它允许开发人员和用户直接在Windows上运行原生Linux二进制文件,而无需配置或修改系统。 WSL命令是用于管理和操作WSL子系统的工具。 常用WSL命令…