#3756. [Poi1998]Assembler circuits

[Poi1998]Assembler circuits

Description

Bytetel公司想改进它们生产的计算机,它们想用一些特殊的汇编电路门系统来替代汇编程序。汇编程序由许多单独的任务组成,每个任务有四个元素。

l 两个寄存器作为输入

l 一个运算符

l 一个寄存器作为输出

我们假设最多有26个寄存器,分别用小写字母a~z表示。此外有四种运算,用大写字母A,B,C,D表示。

一个汇编电路包括:

l 输入端映射到寄存器,该寄存器的初值作为电路的输入

l 输出端同样映射到寄存器,电路的输出作为给寄存器的值

一个电路由许多门组成,每个门包括两个输入和一个输出,它将输入的值进行一个基本运算,并将结果输出。门的输入和整个电路的输出要么与其它门的输出端相连,要么和整个电路的输出端相连。门的输出和整个电路的输入要么与其它门的输入端相连,要么和整个电路的输出端相连。电路门之间不会形成回路。

如果一个电路门系统和一个汇编程序对于任意的输入,它们的输出都相同,那么我们就称它们是等效的。

任务:

1、读入一个汇编程序的描述

2、计算最少要几个门可以组成与汇编程序等效的电路系统

3、输出

Format

Input

第一行包含一个整数n,(1<=n<1000),表示汇编程序的指令数。以后n行每行包含4个字母表示一条指令,第一个字母为A,B,C,D中的一个,表示操作的类型,第二和第三个字母为小写字母,表示输入的寄存器,第四个字母也是小写字母,表示输出的寄存器。``

Output

包含一个整数,表示与给汇编程序等效的电路门系统中最少需要几个电路门。

Samples

8
Afbc
Bfbd
Cddd
Bcbc
Afcc
Afbf
Cfbb
Dfdb
6