#P17506. PM14126 袋子与卡片
PM14126 袋子与卡片
题目描述
有 个袋子,编号为 。每个袋子中有很多卡片,每张卡片上写着一个 到 的整数。
记 为袋子 中数字 的卡片数量。给定 ,所有 按如下顺序生成,其中所有运算均使用足够大的整数类型:
for i = 0 .. n-1:
for j = 0 .. m-1:
cnt[i][j] = x
x = ((x * a + b) xor c) mod 1000000007
长度为 的字符串 isGood 描述哪些和是“好数”:当且仅当 isGood[k] = 'Y' 时,整数 是好数。
对于两个袋子 ,定义 为:分别从袋子 和袋子 中选择一张卡片,使两张卡片上的数字之和为好数的方案数。
你需要计算所有 ,并输出
$\displaystyle \bigoplus_{0\le i<j<n}(ans_{i,j}\bmod 1000000007)$,
其中 表示按位异或。
输入格式
第一行包含六个整数 。
第二行一个长度为 的字符串 isGood。
输出格式
输出一个整数,表示上述异或值。
数据范围
- ;
- ;
isGood长度恰为 ,且只包含Y和N。
样例
输入
2 4 1 1 0 0
NNYYNYN
输出
9