Problem 5109. -- [NEERC2017 Northern]Fygon 2.0

5109: [NEERC2017 Northern]Fygon 2.0

Time Limit: 2 Sec  Memory Limit: 512 MB
Submit: 4  Solved: 2
[Submit][Status][Web Board]

Description

Fygon 2.0是一种新型的程序设计序言,他只包含两种语句。第一种语句是lag,另一种是for循环:
for <variable> in range(<from>, <to>):
    <body>
1. for循环将把变量<variable>从<from>循环到<to>,两边值都是可以取到的。
2. 如果<from>大于<to>,那么<body>不会被执行。
3. <variable>是一个a到z之间的小写字符,但不会是n,n代表代码一开始定义的常量。
4. <from>和<to>可以是某个在循环之外定义的变量,另外<from>可以是1,<to>可以是n。
5. <body>至少包含一条语句,且缩进4个空格。
知道了语法,你就会发现你可以写嵌套的for循环。
为了简化问题,本题中嵌套关系将形成一条链,并且以一句lag结束。所有<variable>都是不同的,且不会是n。
定义f(n)表示当n在该取值时,lag语句的执行次数。
对于一个非负整数k以及一个比率正参数C,
我们称C*n^k是该程序的渐进复杂度当且仅当n趋向于无穷大时,f(n)和C*n^k的比值趋向于1。
给定一段代码,请计算k和C。

Input

第一行包含一个正整数m(2<=m<=21),表示代码行数。
接下来m行描述这个程序,保证for语句的数量在1到20之间。

Output

输出一行两个数k,C,其中k是非负整数,C用p/q的形式输出,其中p,q互质。

Sample Input

4
for i in range(1, n):
    for j in range(1, i):
        for k in range(j, n):
            lag

Sample Output

3 1/3

HINT

Source

[Submit][Status]