题目一、给一个表,表里有5个数,在[0-13]之间,其中0可以表示任意数,判断这个表是否连续 思路: 连续的条件: 1、表中都是0 2、表中有4个0 3、0个数不大于3,经过排序之后除去0之外,最大值减去最小值的差小于5 注意:要排除掉除去0之外的数里面有相同的数 local list = {0,0,2,5,1} function toCheck () table.sort(list) -- 把数组从小到大排序 local zero_num = 0 for k,v in pairs(list) do if v == 0 then zero_num = zero_num + 1 elseif v ~= 0 then for i = k+1,#list do if v == list[i] then print("该表不连续") return end end end end if zero_num == 4 or zero_num ==5 then print("该表连续") elseif list[#list] - list[zero_num + 1] < 5 then print("该表连续") else print("该表不连续") end end toCheck()
原文:http://www.cnblogs.com/jierism/p/6657737.html