結果
問題 | No.265 数学のテスト |
ユーザー | matsu7874 |
提出日時 | 2015-08-07 23:38:11 |
言語 | Python3 (3.13.1 + numpy 2.2.1 + scipy 1.14.1) |
結果 |
AC
|
実行時間 | 33 ms / 2,000 ms |
コード長 | 1,077 bytes |
コンパイル時間 | 123 ms |
コンパイル使用メモリ | 12,672 KB |
実行使用メモリ | 10,880 KB |
最終ジャッジ日時 | 2024-11-24 11:23:35 |
合計ジャッジ時間 | 2,162 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 4 |
other | AC * 32 |
ソースコード
def bibun(n,c): if n<c: return 0 res = 1 for i in range(c): res *= n n -= 1 return res def main(): N = int(input()) d = int(input()) S = input() A = [0 for i in range(d+1)] d_cnt = 0 x_cnt = 0 a = 0 pre = '' for s in S: if s in '123456789': if a==0: a = int(s) else: a *= int(s) elif s == '{': d_cnt += 1 elif s == '}': if x_cnt >= d_cnt: A[x_cnt-d_cnt] += a*bibun(x_cnt, d_cnt) x_cnt = 0 a = 0 d_cnt -= 1 elif s == '+': if x_cnt >= d_cnt: A[x_cnt-d_cnt] += a*bibun(x_cnt, d_cnt) x_cnt = 0 a = 0 elif s == 'x': x_cnt += 1 if a == 0: a = 1 if x_cnt >= d_cnt: A[x_cnt - d_cnt] += a * bibun(x_cnt, d_cnt) ans = '' for ai in A: ans += str(ai) + ' ' print(ans[:-1]) if __name__ == '__main__': main()