diff options
| -rw-r--r-- | challenge-336/hvukman/lua/336_p2.lua | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/challenge-336/hvukman/lua/336_p2.lua b/challenge-336/hvukman/lua/336_p2.lua new file mode 100644 index 0000000000..7943f876d7 --- /dev/null +++ b/challenge-336/hvukman/lua/336_p2.lua @@ -0,0 +1,36 @@ +local scores = {"5","-2","4","C","D","9","+","+"}
+
+function Final_score(x)
+ local score = 0
+ local prev = {}
+ local res = {}
+
+ for i=1,#x do
+ if (tonumber(x[i])) then
+ table.insert(prev,x[i])
+ table.insert(res,x[i])
+ elseif scores[i]=="C" then
+ table.remove(prev)
+ table.remove(res)
+ elseif scores[i]=="D" then -- double previous score
+ local last = prev[#prev]
+ table.insert(res,last*2)
+ table.insert(prev,last*2)
+ elseif scores[i]=="+" then -- add last two scores
+ local last = prev[#prev]
+ local last2 = prev[#prev-1]
+ table.insert(res,last+last2)
+ table.insert(prev,last+last2)
+ end
+ end
+
+
+ for _,v in ipairs(res) do
+ print(v)
+ score= score + v
+ end
+
+ print("score ", score)
+end
+
+Final_score(scores)
\ No newline at end of file |
