当前位置:网站首页>L1-019 who falls first (Lua)

L1-019 who falls first (Lua)

2022-07-07 19:13:00 Just be interesting

subject

Boxing is an interesting part of the ancient Chinese wine culture . The method of two people on the wine table is : Shout out a number from each mouth , Draw a number with your hand . If someone's number is exactly equal to the sum of the two Numbers , Who is lost , The loser gets a glass of wine . Either a win or a loss goes on to the next round , Until the only winner comes along .

So let's give you a 、 B how much for two ( How many cups can you drink at most ) And punching records , Please judge which of the two should go first .

Input format :
The first line of input gives us a 、 B how much for two ( No more than 100 Non-negative integer ), Space off . The next line gives a positive integer N(≤100), And then N That's ok , Each line gives a record of one stroke , The format is :

A shout A stroke Ethyl shout B row
Among them, shouting is the number , A stroke is a number drawn out , No more than 100 The positive integer ( Row with both hands ).

Output format :
Output the first person to fall on the first line :A On behalf of a ,B On behalf of the b . The second line shows how many drinks the person who didn't pour had . They guarantee that one person will fall . Note that the program terminates when someone drops , You don't have to deal with the rest of the data .

sample input :
1 1
6
8 10 9 12
5 10 5 10
3 8 5 12
12 18 1 13
4 16 12 15
15 1 1 16
sample output :
A
1

Code

function ReadValue(str)
    local arr = {
    }
    local idx = 1
    for i = 1, #str do
        if str:sub(i,i) == " " then
            table.insert(arr, tonumber(str:sub(idx, i - 1)))
            idx = i + 1
        end
    end
    
   table.insert(arr, tonumber(str:sub(idx)))
    
    return arr[1], arr[2], arr[3], arr[4]
end

local str = io.read()
local x1, x2 = 0, 0
for i = 1, #str do
    if str:sub(i,i) == " " then
        x1 = tonumber(str:sub(1, i - 1))
        x2 = tonumber(str:sub(i + 1))
        break
    end
end

local n = io.read()
local d1, d2 = 0, 0
for i = 1, n do
    
    local a1, a2, b1, b2 = ReadValue(io.read())
    local ans = a1 + b1
    
    if a2 == ans and b2 ~= ans then
        d1 = d1 + 1
    else
        if a2 ~= ans and b2 == ans then
            d2 = d2 + 1
        end
    end
    
    if  d1 > x1 then
        print("A")
        print(d2)
        break
    end
    
    if d2 > x2 then
        print("B")
        print(d1)
        break
    end
    
end
原网站

版权声明
本文为[Just be interesting]所创,转载请带上原文链接,感谢
https://yzsam.com/2022/188/202207071515233781.html