UOJ Logo 黑暗爆炸OJ

DARKBZOJ

#4846. [neerc2016]Hard Refactoring

Statistics 下载数据

Description

对于一个变量x(-32768<=x<=32767),给出一些约束条件,形如x >= a,x <= a
这些约束条件之间用||连接,然后你需要将这些约束条件简化,最后输出简化后的约束条件。

Input

输入不超过1000行,每行要么是两个用&&连接的约束条件,要么就是单个的约束条件
如果一行有两个约束条件,第一个约束条件总是x >= a的形式,第二个约束总是x <= a的形式。
除了输入的最后一行,每一行末尾都有一个||
并且所有的字符(除了>=,<=,&&,||)之间均由空格隔开,且没有多余的前置、后置空格。

Output

输出若干行,表示最简的约束条件的形式(也就是使输出的行数尽量少),其余格式与输入格式保持一致。
输出的若干行可以不按照特定的顺序输出。
特别地,如果对于任意的x∈[-32768,32767],x均能满足约束条件,
仅输出一行true,反之,若对于任意的x∈[-32768,32767],x均不能满足约束条件,仅输出一行false。

Sample Input

x >= 5 && x <= 10 ||
x >= 7 && x <= 20 ||
x <= 2 ||
x >= 21 && x <= 25 ||
x >= 8 && x <= 10 ||
x >= 100

Sample Output

x <= 2 ||
x >= 5 && x <= 25 ||
x >= 100

Hint

Source