結果
| 問題 | No.3503 Brackets Stack Query 2 |
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2026-04-18 04:01:19 |
| 言語 | Go (1.26.1) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 1,126 bytes |
| 記録 | |
| コンパイル時間 | 13,944 ms |
| コンパイル使用メモリ | 277,428 KB |
| 実行使用メモリ | 42,536 KB |
| 最終ジャッジ日時 | 2026-04-18 04:02:57 |
| 合計ジャッジ時間 | 27,702 ms |
|
ジャッジサーバーID (参考情報) |
judge1_0 / judge2_0 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | -- * 1 |
| other | WA * 11 TLE * 1 -- * 18 |
ソースコード
package main
import (
"bufio"
"fmt"
"os"
"strconv"
"strings"
)
func main() {
scanner := bufio.NewScanner(os.Stdin)
scanner.Scan()
Q, _ := strconv.Atoi(scanner.Text())
query := make([]string, Q)
for i := 0; i < Q; i++ {
scanner.Scan()
query[i] = scanner.Text()
}
left, center, right := 0, 0, 0
str := ""
if len(query[0]) < 3 || query[0][2] != '(' {
for t := 0; t < Q; t++ {
fmt.Println("No")
}
return
}
for i := 0; i < Q; i++ {
if len(query[i]) >= 3 && query[i][0] >= '0' && query[i][0] <= '9' && (query[i][2] == '(' || query[i][2] == '|' || query[i][2] == ')') {
str += string(query[i][2])
} else {
if len(str) > 0 {
str = str[:len(str)-1]
}
}
if len(query[i]) >= 3 {
if query[i][2] == '(' {
left++
} else if query[i][2] == '|' {
center++
} else if query[i][2] == ')' {
right++
}
}
if left == center && center == right {
temp := str
for strings.Contains(temp, "(|)") {
temp = strings.ReplaceAll(temp, "(|)", "")
}
if temp == "" {
fmt.Println("Yes")
} else {
fmt.Println("No")
}
} else {
fmt.Println("No")
}
}
}