func main() { var dfs func(nums []int, preUp, preDown, cur, n int) flag := false dfs = func(nums []int, preUp, preDown, cur, n int) { if flag { return } if cur == n { flag = true return } if nums[cur] > preUp { dfs(nums, nums[cur], preDown, cur+1, n) } if nums[cur] < preDown { dfs(nums, preUp, nums[cur], cur+1, n) } } var T int var n int fmt.Scanf("%d", &;T) for i := 0; i < T; i++ { fmt.Scanf("%d", &;n) nums := make([]int, n) for i := 0; i < n; i++ { fmt.Scanf("%d", &;nums[i]) } flag = false dfs(nums, -1, 501, 0, n) if flag { fmt.Println("Yes") } else { fmt.Println("No") } } } 铁子 我这第一题咋不对啊
点赞 2

相关推荐

2025-12-18 19:36
已编辑
门头沟学院 Java
程序员牛肉:可以的,简历没毛病了。 虽然还是偏向同质化,不过学历不错。后续我觉得重心放到刷实习+摆脱同质化问题上
实习简历求拷打
点赞 评论 收藏
分享
牛客网
牛客网在线编程
牛客网题解
牛客企业服务