一个B题的思路 B题先填充相同的字符(比如r),然后依次填充e、d、r package main import ( "fmt" "math" "strings" ) func main() { x := 0 fmt.Scan(&x) n := math.Floor(0.5 * (-1 + math.Sqrt(1.0+8.0*float64(x)))) var res strings.Builder res.Grow(100000) for i := 0; i < int(n); i++ { res.WriteByte('r') } x = x - int(n*(n+1)/2.0) for i := 0; i < x; i++ { if i%3 == 0 { res.WriteByte('e') } else if i%3 == 1 { res.WriteByte('d') } else { res.WriteByte('r') } } fmt.Println(res.String()) }
2 4

相关推荐

2025-12-24 14:10
成都锦城学院 C++
程序员花海:技能放最后 实习和项目没亮点 正确格式是业务技术加指标 c++不建议
点赞 评论 收藏
分享
萧索X:写篮球联赛干嘛,陪老板打篮球吗。还有实习经历要写自己所在岗位具体完成什么工作,自己的任务具体完成了什么需求,给公司带来了哪些量化增长
点赞 评论 收藏
分享
牛客网
牛客网在线编程
牛客网题解
牛客企业服务