编程介的小学生 2020-01-16 11:47 采纳率: 20.5%
浏览 289

Simulation? 模拟的问题

Problem Description
A computer simulation, a computer model, or a computational model is a computer program, or network of computers, that attempts to simulate an abstract model of a particular system. Computer simulations have become a useful part of mathematical modeling of many natural systems in physics, astrophysics, chemistry and biology, human systems in economics, psychology, social science, and engineering, of course, also computer.
“Fundamentals of compiling” is an important course for computer science students. In this course, most of us are asked to write a compiler to simulate how a programming language executes. Today, boring iSea invites a new programming language, whose name is Abnormal Cute Micro (ACM) language, and, YOU are assigned the task to write a compiler for it.
ACM language only contains two kinds of variables and a few kinds of operations or functions, and here are some BNF-like rules for ACM.

Also, here is some explanation for these rules:
1) In ACM expressions, use exactly one blank to separate variables and operators, and as the rule indicates, the operator should apply right to left, for example, the result of “1 - 2 - 3" should be 2.
2) In the build function, use exactly one blank to separate integers, too.
3) Beside there are brackets in function, no other bracket exists.
4) All the variables are conformable, and never exceed 10000.
Given an ACM expression, your task is output its value. If the result is a integer, just report it, otherwise report an array using the format “{integer_0, integer_1, … , integer_n}”.

Input
The first line contains a single integer T, indicating the number of test cases.
Each test case includes a string indicating an valid ACM expression you have to process.

Technical Specification
1. 1 <= T <= 100
2. 1 <= |S| <= 100, |S| indicating the length of the string.

Output
For each test case, output the case number first, then the result variable.

Sample Input
10
1 + 1
1 - 2 - 3
dance(3)
vary(2) * 2
vary(sum(dance(5) - 1))
dance(dance(-3))
1 - 2 - 3 * vary(dull(build(1 2 3)))
dance(dance(dance(dance(dance(2)))))
sum(vary(100)) - sum(build(3038))
build(sum(vary(2)) dull(build(1 0)) 2 dull(dance(2))) - build(1 1 1 1)

Sample Output
Case 1: 2
Case 2: 2
Case 3: {3, -2, 1}
Case 4: {2, 4}
Case 5: {2, 1}
Case 6: -4
Case 7: {2, 5}
Case 8: {4, -3, 2, -1}
Case 9: 2012
Case 10: {2, 0, 1, 2}

  • 写回答

0条回答 默认 最新

    报告相同问题?

    悬赏问题

    • ¥60 版本过低apk如何修改可以兼容新的安卓系统
    • ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏
    • ¥50 有数据,怎么建立模型求影响全要素生产率的因素
    • ¥50 有数据,怎么用matlab求全要素生产率
    • ¥15 TI的insta-spin例程
    • ¥15 完成下列问题完成下列问题
    • ¥15 C#算法问题, 不知道怎么处理这个数据的转换
    • ¥15 YoloV5 第三方库的版本对照问题
    • ¥15 请完成下列相关问题!
    • ¥15 drone 推送镜像时候 purge: true 推送完毕后没有删除对应的镜像,手动拷贝到服务器执行结果正确在样才能让指令自动执行成功删除对应镜像,如何解决?