結果

問題 No.222 引き算と足し算
ユーザー ktshun
提出日時 2015-06-10 19:49:47
言語 Python2
(2.7.18)
結果
AC  
実行時間 12 ms / 1,000 ms
コード長 869 bytes
コンパイル時間 173 ms
コンパイル使用メモリ 6,912 KB
実行使用メモリ 6,820 KB
最終ジャッジ日時 2024-11-15 21:54:31
合計ジャッジ時間 1,534 ms
ジャッジサーバーID
(参考情報)
judge5 / judge1
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 31
権限があれば一括ダウンロードができます

ソースコード

diff #

# -*- coding:utf-8 -*-

if __name__ == "__main__":
	S = raw_input()
	flag = 0
	ope = ["-","+"]
	num1 = []
	num2 = []
	ans = 0
	temp1 = 0
	temp3 = 0
	for s in S:
		if s in ope:
			if flag == 0:
				flag = 1
				if s == "-":
					temp1 = 1
				else:
					temp1 = 0
			elif flag == 1:
				k = 1
				num = 0
				for i in num1[::-1]:
					num += k * i
					k *= 10
				if temp1 == 1:
					num = 0 - num
				ans = num
				if s == "-":
					temp2 = 1
				else:
					temp2 = 0
				flag = 3
			elif flag == 3:
				flag = 4
				if s == "-":
					temp3 = 1
				else:
					temp3 = 0
		elif s not in ope:
			if flag == 0 or flag == 1:
				num1.append(int(s))
				flag = 1
			elif flag == 3 or flag == 4:
				num2.append(int(s))
	num = 0
	k = 1
	for i in num2[::-1]:
		num += k * i
		k *= 10
	if temp3 == 1:
		num = 0 - num
	if temp2 == 1:
		print ans + num
	else:
		print ans - num
0