1339: 尔虞我诈

内存限制:128 MB 时间限制:1.000 S
评测方式:文本比较 命题人:
提交:0 解决:0

题目描述

曾经有一个颇为流行的小游戏,名称已无法考证,我们姑且把它叫做“尔虞我诈”。 游戏规则是这样的: 有N人参加比赛,每两人进行一场游戏(因此共进行N*(N-1)/2场游戏),每场游戏分十轮,在每轮中,两人同时说出“TRADE”和“CHEAT”其中之一,如果两人都“TRADE”,各得一分,如果两人都“CHEAT”,各扣一分,如果一个“TRADE”,一个“CHEAT”,则CHEAT的那个人得2分,TRADE的扣2分。每人得的N-1场分数的总和为该人的最后得分,看谁的得分最高。当然,在比赛之前每人的得分为0。 如何才能取胜呢?人们设计了很多战术,可以用以下的“战术语言”来描述: <program> ::= <statement>. <statement> ::= <command> | <ifstat> <ifstat> ::= IF <condition> THEN <statement> ELSE <statement> <condition> ::= <cond> | <cond> <op> <condition> <op> ::= AND | OR <cond> ::= <memory> {= | #} {<command> | NULL} <memory> ::= {MY | YOUR} LAST {1 | 2} <command> ::= TRADE | CHEAT #的意思是“不等于”,NULL的意思是空,不存在。 空格可以在任何地方出现。 例如: CHEAT. 和 IFYOURLAST2=NULLTHENTRADEELSEIFYOURLAST1=TRADETHENTRADEELSECHEAT. 是两个合法的战术语言程序。 编程模拟给定程序间的游戏情况。

输入

第一行,N(<=10),以下 N 行,每一行为一个程序(长度<=255)

输出

共 1 行,有 N 个整数,分别为各程序的最后得分。

样例输入 复制

3
CHEAT.
IF MY LAST1 = CHEAT THEN TRADE ELSE CHEAT.
IFYOURLAST2=NULLTHENTRADEELSEIFYOURLAST1=TRADETHENTRADEELSECHEAT.

样例输出 复制

1 -12 -13