zoukankan      html  css  js  c++  java
  • 一些简单的lua面试题,小算法,算不上算法的算法。。╮(╯▽╰)╭博主面试的辛酸旅程

    博主三个月前的一次面试把,机试,一共三个题目:用lua脚本,招聘应届生,可惜博主不会lua,所以花费一个小时学了下lua就做了前面两题
    使用lua语言解出下题,分别用递归、迭代二种方式, 写出详细的代码:

    楼梯有n阶台阶,上楼可以一步上1阶,也可以一步上2阶,编一程序列出每一种走法。
    例:3阶台阶的走法是
    {
    { 1, 1, 1, },
    { 1, 2, },
    { 2, 1, },
    }

    --迭代
    
    function Way(n)
    resultAll = {}
    tempArr1 = {""}
    resultAll[1] = tempArr1
    tempArr2 = {" 1"}
    resultAll[2] = tempArr2
    for i = 3,n+1 do
    resultAll[i] = {}
    for j=1,table.getn(resultAll[i-1]) do
    table.insert(resultAll[i], resultAll[i-1][j].." 1")
    end
    for j=1,table.getn(resultAll[i-2]) do
    table.insert(resultAll[i], resultAll[i-2][j].." 2")
    end
    end
    for i = 1,table.getn(resultAll[n+1]) do
    print(resultAll[n+1][i])
    end
    end
    
    
    print("请输入阶层数")
    n=io.read("*number")
    io.write(Way(n))
    
    
    --递归
    --这是递归
    function Way(InputNnum,Steup)
    if InputNnum<=2 then
    SteupInput(InputNnum,Steup)
    else
    for Num=1,2 do
    Way(InputNnum-Num,Steup .." " ..Num)
    end
    end
    end
    
    function SteupInput(Input,Num)
    if Input==1 then
    print(Num .." 1")
    m=m+1
    elseif Input==2 then
    print(Num .." 1 1")
    print(Num .." 2")
    m=m+2
    else print("请输入正确的阶层数")
    end
    end
    
    print("请输入阶层数")
    m=0
    i=io.read("*number")
    io.write(Way(i," "))
    print("一共有"..m.."方法")

    第三题有点奇葩,比较容易,但是博主做第三题是连夜火车过去,硬座,没睡,9个小时,恩,你没听错。夏天又出了一身汗
    很累了,买了瓶维生素饮料刺激下自己进去机试,没想到当时语法懵了~毕竟只看了一个小时lua,过了一天又累都忘记得差不多了,头昏昏沉沉的。后来直接被刷,可惜了,热脸贴了冷屁股。
    题目如下:判断一个数组里的数是否有序排列,0可以替代任何数,最大的数不会超过13。

     1 table={9,8,7,6,5,4,3,0}
     2 value = nil
     3 function arrarr(a)
     4 for k=1,#a-1 do
     5 if a[k] == 0 then
     6 else
     7 if a[k+1] ==0 then
     8 else
     9 if value ~= nil then
    10 if value ~= a[k+1]-a[k] then
    11 return print("unordered")
    12 end
    13 else
    14 value = a[k+1]-a[k]
    15 end
    16 end
    17 end
    18 end
    19 return print("ordered")
    20 end
    21 
    22 
    23 arrarr(table)
    
    
  • 相关阅读:
    Nginx优化
    Mysql日常操作
    YUM源
    MySQL5.7安装手册
    自律——可以让我们活的更高级
    javascript中with的用法
    js中所有函数的参数(按值和按引用)都是按值传递的,怎么理解?
    base64编码的图片在网页中显示
    form表单提交没有跨域问题,但ajax提交存在跨域问题
    移动端1px的适配问题
  • 原文地址:https://www.cnblogs.com/dragonmoon/p/4047623.html
Copyright © 2011-2022 走看看