用LUA刷PTA ——1019 General Palindromic Number

无坑点,十分钟轻松愉快

--IO
local IORead = io.read('*a'):gmatch('%w+')

function readNumber()
    return tonumber(IORead())
end

--logic

function generateNumber(number, base)
    if number == 0 then
        return {0}
    end
    local result_table = {}
    while number > 0 do
        table.insert(result_table, 1, number % base)
        number = math.floor(number / base)
    end
    return result_table
end

function isPalindromic(t)
    for i = 1, math.floor(#t/2) do
        if t[i] ~= t[#t - i + 1] then
            return false
        end
    end
    return true
end

function tableToString(t)
    local s = ""
    for _, v in pairs(t) do
        s = s .. tostring(v) .. " "
    end
    return string.sub(s, 1 ,#s - 1)
end

--main
local N = readNumber() b = readNumber()

local Gn = generateNumber(N, b)
print(isPalindromic(Gn) and "Yes" or "No")
print(tableToString(Gn))

 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值