#jag2017summerday1e. [jag2017summer_day1_e]ベクトル式
[jag2017summer_day1_e]ベクトル式
问题
给定以下用 BNF 表示的向量表达式 ,请计算并输出结果。
<expr> ::= <number> | "("<expr>"*"<expr>")" | "("<vector>"*"<vector>")"
<vector> ::= "("<expr>","<expr>")" | "("<expr>"*"<vector>")" | "("<vector>"*"<expr>")"
<number> ::= <digit> | <number><digit>
<digit> ::= "0" | "1" | "2" | "3" | "4" | "5" | "6" | "7" | "8" | "9"
<expr>
表示整数(标量),<vector>
表示二维向量。在本问题中,操作符 *
的意义如下:
<expr>
与<expr>
:表示整数乘法。<vector>
与<vector>
:表示向量内积。<expr>
与<vector>
:表示向量的标量倍数。
注意,由于答案可能非常大,请将结果对 取模后输出。
约束条件
- 是由问题描述中的 BNF
<expr>
表示的表达式。
输入
输入从标准输入中给出,具体格式如下:
输出
输出表达式的计算结果除以 的余数。
输入示例 1
((1,2)*(3,4))
输出示例 1
11
计算向量 和向量 的内积,结果为 。
输入示例 2
((((1*2),3)*4)*(((5,6)*(7,8))*(9,10)))
输出示例 2
15936
输入示例 3
0000000000099824435399824435399824435399824435399824435398
输出示例 3
98