#P5300. [GXOI/GZOI2019] 与或和
[GXOI/GZOI2019] 与或和
题目描述
Freda 学习了位运算和矩阵以后,决定对这种简洁而优美的运算,以及蕴含深邃空间的结构进行更加深入的研究。
对于一个由非负整数构成的矩阵,她定义矩阵的 值为矩阵中所有数二进制 的运算结果;定义矩阵的 值为矩阵中所有数二进制 的运算结果。
给定一个 的矩阵,她希望求出:
- 该矩阵的所有子矩阵的 值之和(所有子矩阵 值相加的结果)。
- 该矩阵的所有子矩阵的 值之和(所有子矩阵 值相加的结果)。
接下来的剧情你应该已经猜到——Freda 并不想花费时间解决如此简单的问题,所以这个问题就交给你了。
由于答案可能非常的大,你只需要输出答案对 取模后的结果。
输入格式
输入文件的第一行是一个正整数 ,表示矩阵的尺寸。
接下来 行,每行 个自然数,代表矩阵的一行。相邻两个自然数之间由一个或多个空格隔开。
输出格式
输出只有一行,包含两个用空格隔开的整数,第一个应为所有子矩阵 值之和除以 的余数,第二个应为所有子矩阵 值之和除以 的余数。
3
1 0 0
0 0 0
0 0 0
1 9
3
1 2 3
4 5 6
7 8 9
73 314
提示
样例1解释
该 矩阵共有 个 子矩阵、 个 子矩阵、 个 子矩阵、 个 子矩阵、3 个 子矩阵、 个 子矩阵、 个 子矩阵、 个 子矩阵和 个 子矩阵。
只有一个子矩阵(仅由第一行第一列的那个元素构成的 矩阵) 值为 ,其余子矩阵的 值均为 ,总和为 。
包含第一行第一列那个元素的子矩阵有 个,它们的 值为 ,其余子矩阵的 值为 ,总和为 。
数据范围
测试点编号 | 的规模 | 矩阵中的自然数 |
---|---|---|
另外有一组不计分的 hack 数据,放在 subtask 1 中,数据范围与测试点 一致。