2020年4月5日 星期日

[C_MM213-易] 就決定是你了!!

[C_MM213-易] 就決定是你了!!

成績: 0 / 倒扣: 0.8
題目說明: 在神奇寶貝世界裡,有一名怪獸馴服師名叫小智,他從小就立志要成為神奇寶貝大師,所以分析了神奇寶貝之間的關係,以下是他所分析的資料 :
很多隻神奇寶貝都有他自己屬性,共有 4 種屬性地、水、火、風,每一隻神奇寶貝都有他自己的等級、血量、防禦、招式威力和出招速度,以上都會根據不同屬性有不同的量。血量的算法為 : 水屬性 - 等級 *50+45 ,風屬性 - 等級 *45+45 ,地屬性 - 等級 *45+40 ,火屬性 - 等級 *40+45 ;防禦算法 : 地屬性 - 等級 *8+2 ,風屬性 - 等級 *6+3 ,火和水屬性 - 等級 *5+2 ,招式威力 : 火屬性 - 等級 *20+30 ,地和水屬性 - 等級 * 17+30 ,風屬性 - 等級 *15+30 ;速度算法 : 風屬性 - 等級 *10+10 ,火 - 等級 *8+8 ,水 - 等級 *7+9 ,地 - 等級 *5+10 。每個馴服師最多可帶三隻神奇寶貝,比賽的規則為算出身上每隻神奇寶貝的數值總合較大的為贏,若一樣則平手。每隻神奇寶貝數值算法 : 血量 *0.5+ 防禦 *1.5+ 攻擊 *1.3+ 速度 *2 ,請幫小智算出是否可以打贏對手。
例如 : 單隻等級 50 、水屬性的神奇寶貝,血量為 2545, 防禦 252 招式威力 880 速度 359 整體數值為 (2545*0.5 + 252*1.5 + 880*1.3 + 359*2)=3512.5
輸入說明: 第一行為一個整數 n ( 0 < n ≤ 16 ) 代表有幾個對手,之後有 2n 行,每兩行代表小智與對手,每一行的第一個數字 k 代表馴服師身上有 k ( 1 ≤ ≤ 3 ) 隻神奇寶貝,之後有 2k 個數字分別代表每隻神奇寶貝的等級 Lv (1 ≤ Lv ≤100 ) 、屬性,屬性以 1,2,3,4 代表地 , 水 , 火 , 風。
輸出說明: 如果小智可以獲勝則輸出 win ,不行則輸出 lose ,平手則輸出 tie 。
範例
Sample Input:Sample Output:
3
1 50 2
1 50 2
3 50 2 60 3 70 4
2 60 3 50 1
2 60 4 100 1
3 70 3 100 3 90 3
tie
win
lose
while True:
    try:
        def pok(g, att): #g→等級 n→屬性
            if att == 1:
                pow = (g*45+40)*0.5 + (g*8+2)*1.5 + (g*17+30)*1.3 + (g*5+10)*2
            elif att == 2:
                pow = (g*50+45)*0.5 + (g*5+2)*1.5 + (g*17+30)*1.3 + (g*7+9)*2
            elif att == 3:
                pow = (g*40+45)*0.5 + (g*5+2)*1.5 + (g*20+30)*1.3 + (g*8+8)*2
            else:
                pow = (g*45+45)*0.5 + (g*6+3)*1.5 + (g*15+30)*1.3 + (g*10+10)*2
            return pow
        n = int(input())
        for i in range(n):
            G = list(map(int,input().split()))
            K = list(map(int,input().split()))
            G_pow, K_pow = 0, 0
            for j in range(G[0]):
                G_pow += pok(G[2*j+1], G[2*j+2])
            for j in range(K[0]):
                K_pow += pok(K[2*j+1], K[2*j+2])
            if G_pow > K_pow:
                print('win')
            elif G_pow < K_pow:
                print('lose')
            else:
                print('tie')
    except(EOFError):
        break

沒有留言:

張貼留言