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

相关推荐

06-15 20:57
已编辑
门头沟学院 Java
CARLJOSEPH...:年轻人有傲气很正常,但是建议工作前洗净傲气。 说实在的,什么奖学金什么奖项的都很一般。尊重你的老师,在有时间的时候去上课,真遇到走不开的事,请态度端正地向你的老师说明情况,请求请假。我相信任何一个有师德的老师都会允许的(我的老师就是这样)。
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
07-15 12:20
点赞 评论 收藏
分享
牛客网
牛客网在线编程
牛客网题解
牛客企业服务