2012错题整理集

 

 

 

题目答案

填空位置 ①:

0

填空位置 ②:

y[j] < y[i]

填空位置 ③:

f[i]++

填空位置 ④:

f[i] >= max_f

填空位置 ⑤:

ans = i

题目解析

先大致浏览一遍,可以得出,f[i]f[i] 应该是第 ii 个点的战斗力大小,ansans 应该是战斗力最高的点的编号,max_fmaxf​ 是战斗力最高的点的战斗力。所以第一空明显应该是赋初值,第二三五三空都比较简单,关键在于第四空,要注意题目中说到,战斗力相同要取编号大的,所以应该要加等于号。

 

 

 

题目答案

填空位置 ①:

false

填空位置 ②:

used[data[i]] = false

填空位置 ③:

j

填空位置 ④:

n

填空位置 ⑤:

break

题目解析

used[i] == 0表示数字i还没有被使用过,每次倒着找到第一个能变大的数字然后变大,接着把后面的数字直接从小到大安排,就生成了一个新的组合。flagflag 是标记能不能找到一个新的排列,第一层的循环意义是把排列中的第 ii 位给它清零就是第二个空的作用,如果找到一个排列就把后面的排列补全(在剩余的元素中找到最小的排列)然后跳出循环,就是第四和第五个空的意思。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值