pat 1010. 一元多項式求導 (25)

1010. 一元多項式求導 (25)

時間限制
400 ms
內存限制
65536 kB
代碼長度限制
8000 B
判題程序
Standard

設計函數求一元多項式的導數。(注:xn(n爲整數)的一階導數爲n*xn-1。)

輸入格式:以指數遞降方式輸入多項式非零項係數和指數(絕對值均爲不超過1000的整數)。數字間以空格分隔。

輸出格式:以與輸入相同的格式輸出導數多項式非零項的係數和指數。數字間以空格分隔,但結尾不能有多餘空格。注意“零多項式”的指數和係數都是0,但是表示爲“0 0”。

輸入樣例:
3 4 -5 2 6 1 -2 0
輸出樣例:
12 3 -10 1 6 0
i = map(int, raw_input().split())
if len(i) == 0:
    print 0,0
else:
    for j in range(len(i) / 2):
        if i[j * 2] != 0 and i[j * 2 + 1] == 0:
            pass
        elif i[j * 2] == 0:
            print 0, 0,
        else:
            i[j * 2] = i[j * 2] * i[j * 2 + 1]
            i[j * 2 + 1] = i[j * 2 + 1] - 1
            print i[j * 2], i[j * 2 + 1],
有一個測試點沒過,題目要求的有一些迷亂

下面貼一個能夠測試通過的代碼:

python 3.4.2

n=input().split()    
a=list(map(int,n))    
i=0    
c=[]    
while not i== (len(a)):  
    m=a[i]*a[i+1]    
    b=a[i+1]-1  
    if m:           
             if a[i+1]==0 and not(a[i]==0):    
                 pass    
             elif b==-1 and a[i]==0:    
                 m=0    
                 b=0    
                 c.append(str(m))    
                 c.append(str(b))    
             else:    
                 c.append(str(m))    
                 c.append(str(b))    
    i+=2  
  
if not(len(c)):  
         print('0 0')  
else:  
         print(' '.join(c).strip())   


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章