洛谷题单入门1 顺序结构

👨‍💻 关于作者:会编程的土豆

"不是因为看见希望才坚持,而是坚持了才看见希望。"

你好,我是会编程的土豆,一名热爱后端技术的Java学习者。

📚 正在更新中的专栏:

💕作者简介:后端学习者

1.

Go 复制代码
package main

import "fmt"

func main() {
	var a, b int
	fmt.Scan(&a, &b)
	c := a * b
	fmt.Println(c)
}

2.

Go 复制代码
package main

import (
    "fmt"
    "unicode"
)

func main() {
    var c rune // 使用 rune 类型
    fmt.Scanf("%c", &c)
    fmt.Printf("%c", unicode.ToUpper(c)) // 直接用标准库转换
}

常用函数

函数 作用 类似 C
unicode.ToUpper(r) 转大写 toupper()
unicode.ToLower(r) 转小写 tolower()
unicode.IsUpper(r) 判断是否大写 isupper()
unicode.IsLower(r) 判断是否小写 islower()
unicode.IsDigit(r) 判断是否数字 isdigit()
unicode.IsLetter(r) 判断是否字母 isalpha()

3.

Go 复制代码
package main

import "fmt"

func main() {
    var s string
    fmt.Scan(&s)
    for i := len(s) - 1; i >= 0; i-- {
        fmt.Printf("%c", s[i])
    }
}

go里面没有reverse反转函数

4.

Go 复制代码
package main

import "fmt"

func main() {
	var t, m float64
	var n, a int
	fmt.Scanf("%f %d", &t, &n)
	m = t / float64(n)
	a = n * 2
	fmt.Printf("%.3f\n%d", m, a)
}

go语言中类型不同的变量不能直接运算,c++里面int和浮点数可以直接计算的,但是go里面不行

go里面没有double float64就相当于c++的double,所以go也没有 %lf

5.

Go 复制代码
package main

import (
	"fmt"
	"math"
)

func main() {
	var a, b, c float64
	fmt.Scanf("%f %f %f", &a, &b, &c)
	p := (a + b + c) / 2
	s := math.Sqrt(p * (p - a) * (p - b) * (p - c))
	fmt.Printf("%.1f\n", s)
}

使用sqrt函数的时候要加上math.而且Sqrt的S要大写驼峰式,和C++不一样的是C++不需要math.

6.

Go 复制代码
package main

import (
    "fmt"
    "math"
)

func main() {
    const a1 = 24 * 60  // 一整天的分钟数
    const a2 = 8 * 60    // 8:00 对应的分钟数

    var s, v int
    fmt.Scanf("%d %d", &s, &v)

    // 计算路上花费的时间(分钟),向上取整
    temp := int(math.Ceil(float64(s) / float64(v)))
    temp += 10 // 加上垃圾分类的10分钟

    var needTime int
    if temp <= a2 {
        // 当天 8:00 之前出发
        needTime = a2 - temp
    } else {
        // 前一天出发
        needTime = a1 + a2 - temp
    }

    hour := needTime / 60
    minute := needTime % 60

    fmt.Printf("%02d:%02d", hour, minute)
}
C++ Go 说明
ceil((1.0*s)/v) math.Ceil(float64(s) / float64(v)) 必须显式转换类型
ceil 返回 int math.Ceil 返回 float64 需要再转 int
const int a1 = ... const a1 = 24 * 60 Go 自动推断类型
printf("%02d:%02d", ...) fmt.Printf("%02d:%02d", ...) 格式符一样
相关推荐
千千寰宇38 分钟前
[数据库系统] 数据库系统的设计原理研究
数据结构·数据库·database-opengemini/influxdb·database-dament/达梦
聪明蛋子哟1 小时前
不仅仅是向量检索:结合知识图谱与Tool Calling的混合增强生成(Hybrid RAG)方案
人工智能·算法·知识图谱
Pniubi1 小时前
力扣55跳跃游戏(贪心)
算法·leetcode·游戏
jyyyx的算法博客1 小时前
传球游戏【思维】
算法
FL16238631291 小时前
关于2026年南昌大学811信号与系统最后一题电路系统解题思路
算法
殷色玫瑰1 小时前
C++ STL:map 与 set 详解——从底层红黑树到实际应用
c语言·数据结构·c++·算法·visualstudio·rpc
行者全栈架构师2 小时前
【鸿蒙心迹】鸿蒙网络请求架构实战——@ohos.net.http 到 Axios 封装、拦截器与统一错误处理(HarmonyOS 7.x)
前端·算法·架构
小宋10212 小时前
OpenTelemetry GenAI可观测性实战:串起模型、工具、Token与错误
java·人工智能·算法·贪心算法
嫂子开门我是_我哥2 小时前
青少年抑郁、焦虑、失眠与自杀相关表现的症状联系:一篇网络分析论文所使用的算法深度解读
论文阅读·算法·论文笔记
字节跳动的猫2 小时前
LikeShop 商品评价体系二开:追评、晒图审核与评价标签筛选功能开发
运维·数据结构·数据库