結果
問題 |
No.40 多項式の割り算
|
ユーザー |
|
提出日時 | 2015-08-09 02:11:44 |
言語 | PyPy2 (7.3.15) |
結果 |
AC
|
実行時間 | 517 ms / 5,000 ms |
コード長 | 856 bytes |
コンパイル時間 | 1,283 ms |
コンパイル使用メモリ | 76,772 KB |
実行使用メモリ | 91,692 KB |
最終ジャッジ日時 | 2024-07-18 06:09:30 |
合計ジャッジ時間 | 7,935 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 32 |
ソースコード
#!/usr/bin/python def add(a,b): m=max(len(a),len(b)) return [(0 if len(a)<=i else a[i])+(0 if len(b)<=i else b[i]) for i in range(m)] def sub(a,b): return add(a,[-1*e for e in b]) def mul(a,b): r=[] for i in range(len(b)): r=add(r,[0]*i+[b[i]*e for e in a]) return r def checkio(b): ''' b=[] for s in a: s=re.sub(r'-','Z',s) s=re.sub(r'x','0,1',s) b.append([int(_) for _ in process(s).split(',')]) ''' c=[] while len(b[1])<=len(b[0]): d=b[0][-1]//b[1][-1] c.append(d) b[0]=sub(b[0],[0]*(len(b[0])-len(b[1]))+[e*d for e in b[1]]) assert b[0][-1]==0 b[0].pop() while len(b[0])>1 and b[0][-1]==0: b[0].pop() print(len(b[0])-1) print(' '.join(str(e) for e in b[0])) if __name__ == '__main__': import sys if sys.version_info[0]>=3: raw_input=input raw_input() checkio([[int(e) for e in raw_input().split()],[0,-1,0,1]])