算式密码锁
lock
- 时间限制:1.0 秒
- 内存限制:512 MiB
- 输入输出:标准输入输出
题目描述
小 C 给他的自行车装了一把密码锁,但他经常苦恼于忘记密码。不过小 C 虽然记忆力不太好,但拥有超乎常人的计算能力,于是他给自己量身打造了一把特殊的密码锁。
这把密码锁共有 6 位,与常规的密码锁相同,每一位是一个转盘,可以自由转动。但每个转盘上不再是 0~9 的数字简单排列,而是一些特定的数字或符号:
- 第 1、3、5、6 个转盘上,每个位置是一个数字;
- 第 2 个转盘上,每个位置是一个运算符,共有加(
+)、减(-)、乘(*)、除(/)4 种可能; - 第 4 个转盘上,每个位置是一个关系符,共有大于(
>)、等于(=)、小于(<)3 种可能。
每个转盘上的数字或字符均有
凭借小 C 的计算能力,可以现场推算出如何转动转盘才能使正确的算式个数尽可能多。现在你好奇地盯上了他这把密码锁,想要尝试将其打开,但你苦于计算能力不够,所以打算写个程序来帮忙。
需要注意的是,式子中有前导 0 也可被视为正确,如 1+1=02、2-2=00 等;除法是数学意义上的除法而非计算机中的整数除法,如 9/4=02 这样的式子被视为错误;除以 0 的式子将直接被视为错误,如 1/0=00 等。
输入格式
第 1 行,一个正整数
接下来 6 行,每行一个长度为
中的字符为数字( 0123456789);中的字符为运算符( +-*/);中的字符为关系符( >=<)。
输出格式
输出一行,一个非负整数,表示任意旋转密码锁后,正确的算式数量的最大值。
样例 1 输入
2
23
*+
34
><
12
05样例 1 输出
2样例 1 解释
一种转动转盘使得两个算式均成立的方案为:
2+3<25
3*4>10样例 2 输入
10
0123456789
+-*/+-+/*/
0123456789
=<=>=<=>=>
0123456789
0123456789样例 2 输出
5数据范围
对于所有测试数据保证:
| 测试点编号 | 特殊性质 | |
|---|---|---|
| 1 ~ 2 | 1 | AB |
| 3 ~ 4 | 1 | A |
| 5 ~ 6 | 1 | B |
| 7 ~ 9 | 1 | 无 |
| 10 ~ 11 | 2 | AB |
| 12 ~ 13 | 2 | A |
| 14 ~ 15 | 10 | B |
| 16 ~ 17 | 10 | 无 |
| 18 ~ 20 | 10 | 无 |
“特殊性质 A”为:+;
“特殊性质 B”为:=。