这题有点逆天

P1241 括号序列

Zlc晨鑫 @ 2022-10-02 15:01:05

输入

([)

显然输出是

([])

然而两年前的代码输出是

()[]()

根据之前的题意是这样的,但是昨天貌似题面又双叒叕改了,所以显然第一个输出是正确的。

所以我重新写了一个程序。

输出是对的。

但是竟然WA了!!!!

最最最离谱的是,我试了好几个题解,发现无一例外,AC的代码都是第二个输出。我直接就震惊了。

谁能告诉这是怎么回事。


by joker_opof_qaq @ 2022-10-02 15:02:18

@Zlc晨鑫 so what do you want to say


by Zlc晨鑫 @ 2022-10-02 15:03:35

@1_plus_1_equal_5 题面还不如不改,现在更逆天了。题面直接说([])是平衡序列。


by Zlc晨鑫 @ 2022-10-02 15:09:11

所以,其实题面的意思是这样的:

我们定义左括号为[(; 右括号为])

再定义匹配:()匹配,[]匹配。

对于一个右括号x,找到它的第一个左括号y,如果x和y匹配,就给x和y打上标记。

遇到有标记的字符,直接输出;否则输出对应的匹配字符串。

反正这样写出来的程序是AC的。


by joker_opof_qaq @ 2022-10-02 15:09:14

说以@管理员


by Zlc晨鑫 @ 2022-10-02 15:09:46

@bye_wjx 您数数,这两个输出哪个补全字符数最小?


by joker_opof_qaq @ 2022-10-02 15:09:51


by Zlc晨鑫 @ 2022-10-02 15:11:31

所以到底的我的理解出问题了,还是题目出问题了()


by Zlc晨鑫 @ 2022-10-02 15:12:35

对于一个右括号x,找到它的第一个左括号y

是找到它左边的第一个左括号y


by wangzl @ 2022-10-02 15:13:34

@Zlc晨鑫 建议你看看 \color{white}\colorbox{blue}{这个}


by Zlc晨鑫 @ 2022-10-02 15:14:05

为啥没人了()

题目有问题的话我才@管理,不然没事打扰管理干吗()


| 下一页