问题 Y: 俄罗斯轮盘

问题 Y: 俄罗斯轮盘

时间限制: 1 Sec  内存限制: 128 MB
提交: 56  解决: 11
[提交][状态][讨论版][命题人:]

题目描述

原题链接 http://codeforces.com/problemset/problem/103/C


有一把左轮手枪,其弹夹可以旋转,里面可以装n颗子弹,为了让上天决定两个人的生死,A在里面放了k颗子弹(k<=n),B将已装好子弹的弹夹,按照自己的意愿旋转,这样旋转后A,B都不知道哪一枪有子弹,A先开枪,但是A为了让自己幸存下来,在放子弹时候,改变了k颗子弹的顺序,使其获胜的概率最大,如果有若干种可能,那么A就按照字典序的顺序排列,为了很好的解释一下字典序排列,举几个例子:



     ...X.X..   >   .....X.X       ...X.XX < .X.X.X.         ..X > ...   .. < .X


也就是说如果两个序列概率一样那么尽量选X靠后的,最后有p个询问,当询问到 i 输出 i 的状态  Xi  表示有子弹,反之没有

输入

第一行输入n、k、p,如上文描述。(1 ≤ n ≤ 1e18, 0 ≤ k ≤ n, 1 ≤ p ≤ 1000)

接下来p行代表p个询问:

输入一个xi,代表查询的有子弹还是无子弹 (1 ≤ xi ≤ n

输出

对于每一个询问,输出.或者X

样例输入

3 1 3
1
2
3

样例输出

..X

提示

[提交][状态]