会员专享
请先
登录,登录后可使用今日免费解锁;
开通会员后可解锁完整内容。
解题思路
模型文本里要删的是三个关键字各自所在的那一句,注释里的同名单词不能动,关键字左边的缩进也不能动。
- 用下标 i 从左往右扫。先看是不是 /∗ 或 //。块注释抄到 ∗/,行注释抄到这一行的换行,注释内部不再找关键字。
- 正文里若从 i 起正好是 remark、preset 或 required,还要核对两侧。左侧只能是行首、空格、制表符、{ 或 ;;右侧只能是空格、制表符、换行或 ;。对不上就当普通名字,例如 myremark。
- 两侧都合法时,找到后面第一个 ;。闭区间 [i, 分号] 里只把换行符写进结果,其余字符丢掉。这样跨行的句子行数不变,关键字左边的缩进因为在区间外而保留。
- 当前字符都不是注释也不是合法关键字时,原样写入结果,i 前进一格。