結果
| 問題 | No.708 (+ー)の式 | 
| コンテスト | |
| ユーザー |  ntuda | 
| 提出日時 | 2024-02-10 01:40:23 | 
| 言語 | PyPy3 (7.3.15) | 
| 結果 | 
                                AC
                                 
                             | 
| 実行時間 | 34 ms / 2,000 ms | 
| コード長 | 876 bytes | 
| コンパイル時間 | 226 ms | 
| コンパイル使用メモリ | 82,596 KB | 
| 実行使用メモリ | 53,824 KB | 
| 最終ジャッジ日時 | 2024-09-28 16:51:58 | 
| 合計ジャッジ時間 | 1,334 ms | 
| ジャッジサーバーID (参考情報) | judge2 / judge4 | 
(要ログイン)
| ファイルパターン | 結果 | 
|---|---|
| sample | AC * 3 | 
| other | AC * 12 | 
ソースコード
S = input()
N = len(S)
i = 0
j = 0
op = {"+","-"}
tmp1 = 0
op1 = 1
while i + j < N:
    if S[i+j] == "(":
        tmp2 = 0
        op2 = 1
        j += 1
        while S[i+j] != ")":
            if S[i + j] not in op:
                if op2 == 1:
                    tmp2 += int(S[i + j])
                else:
                    tmp2 -= int(S[i + j])
            else:
                if S[i + j] == "+":
                    op2 = 1
                else:
                    op2 = 0
            j += 1
        if op1 == 1:
            tmp1 += tmp2
        else:
            tmp1 -= tmp2
    else:
        if S[i+j] not in op:
            if op1 == 1:
                tmp1 += int(S[i+j])
            else:
                tmp1 -= int(S[i+j])
        else:
            if S[i+j] == "+":
                op1 = 1
            else:
                op1 = 0
    i += 1
print(tmp1)
            
            
            
        