CF1344C Quantifier Question
题目描述
逻辑量词是用于描述集合中命题的有力工具。本题中,我们专注于实数集。实数集包括零和负数。有两种量词:全称量词($ \forall $)和存在量词($ \exists $)。你可以在这里了解更多相关内容。
全称量词用于断言某个命题对所有实数都成立。例如:
- $ \forall x, xx-1 $ 读作:对于所有实数 $ x $,$ x $ 都大于 $ x-1 $。这个命题是真的。
存在量词用于断言存在某个实数使得命题成立。例如:
- $ \exists x, xx-1 $ 读作:存在一个实数 $ x $,使得 $ x $ 大于 $ x-1 $。这个命题是真的。
此外,量词还可以嵌套。例如:
- $ \forall x, \exists y, x
输入格式
第一行包含两个整数 $ n $ 和 $ m $($ 2\le n\le 2\cdot 10^5 $,$ 1\le m\le 2\cdot 10^5 $),分别表示变量的数量和公式中的不等式数量。
接下来的 $ m $ 行描述公式。第 $ i $ 行包含两个整数 $ j_i $ 和 $ k_i $($ 1\le j_i,k_i\le n $,$ j_i\ne k_i $)。
输出格式
如果不存在任何一种量词分配方式能使语句为真,输出一个整数 $ -1 $。
否则,第一行输出一个整数,表示全称量词的最大可能数量。
第二行输出一个长度为 $ n $ 的字符串,第 $ i $ 个字符为 "A" 表示 $ Q_i $ 应为全称量词($ \forall $),"E" 表示 $ Q_i $ 应为存在量词($ \exists $)。所有字母均为大写。如果有多种方案能使全称量词数量最大,输出任意一种即可。
说明/提示
对于第一个测试样例,语句 $ \forall x_1, \exists x_2, x_1