結果

問題 No.222 引き算と足し算
コンテスト
ユーザー ktshun
提出日時 2015-06-10 19:49:47
言語 PyPy2
(7.3.15)
結果
AC  
実行時間 75 ms / 1,000 ms
コード長 869 bytes
記録
記録タグの例:
初AC ショートコード 純ショートコード 純主流ショートコード 最速実行時間
コンパイル時間 111 ms
コンパイル使用メモリ 77,380 KB
最終ジャッジ日時 2025-12-03 15:35:19
ジャッジサーバーID
(参考情報)
judge2 / judge1
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 31
権限があれば一括ダウンロードができます

ソースコード

diff #
raw source code

# -*- 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