题目描述

一个8 * 8的棋盘,第一个格子放1个麦穗,第二个格子放2个麦穗,第三个格子放4个麦穗……那么最后,共要放几个麦穗呢?

zzf表示这个问题实在太简单,于是重新规定了游戏的规则。

初始的棋盘为空,棋盘大小为p*p,然后他要对棋盘进行若干次操作,可以被选择的操作如下:

1、选择一行,每个格子再放一个麦穗

2、选择一列,每个格子再放一个麦穗

进行若干次操作后,如果得到的棋盘满足如下性质

1、每个格子都有至少一个麦穗

2、每个格子最多只能有p*p个麦穗

3、任意两个格子的麦穗数不同

如果满足以上三条,那么称这个棋盘是一个好棋盘,若只是构造一个好棋盘那就太没意思了,zzf想知道他能得到多少个不同的好矩阵

定义不同的矩阵即只要存在一个位置不同即是不同的

答案对998244353取模

输入描述:
第一行读入一个数p,表示这个棋盘的大小
输出描述:
输出一行包括一个数,表示好棋盘的个数
示例1
输入
2
输出
8
说明
样例解释 :
1 2
3 4
3 4
1 2
1 3
2 4
2 4
1 3
2 1
4 3
4 3
2 1
3 1
4 2
4 2
3 1
备注:
2 <= p <= 1e6, 保证p是质数
题意
如上
题解
首先自己写一个3*3的棋盘
1,2,3
4,5,6
7,8,9
可以发现行和行可以交换,列和列可以交换,易想到行和列全排列p!*p!
然后,通过观察样例发现,棋盘可以横过来
1,4,7
2,5,8
3,6,9
这样又是p!*p!
综上所述,答案就是2*p!*p!(题解的推理太神了,蒻鸡根本看不懂)
代码
 #include<bits/stdc++.h>
using namespace std;
#define ll long long int
const ll mod=,N=1e6+;
int main()
{
ll p,jc[N];
jc[]=;
for(int i=;i<N;i++)
jc[i]=jc[i-]*i%mod;
cin>>p;
cout<<*jc[p]*jc[p]%mod;
return ;
}

Wannafly挑战赛13 C:zzf的好矩阵(思维)的更多相关文章

  1. Wannafly挑战赛13 D.applese的生日(贪心+思维)

    题目描述 最可爱的applese生日啦,他准备了许多个质量不同的蛋糕,想请一些同学来参加他的派对为他庆生,为了不让一部分同学感到不爽,他决定把每个蛋糕都分割成几份(也可以不分割),使得最小的蛋糕的质量 ...

  2. Wannafly挑战赛13 zzf的好矩阵 题解 答案解释

    Wannafly挑战赛13 zzf的好矩阵 题解 文章目录 Wannafly挑战赛13 zzf的好矩阵 题解 分析 结论1 结论2 结论3 C数组对应带子说明 空白长度论述 后续黑色长度论述 能&qu ...

  3. 【瓜分5000元奖金】Wannafly挑战赛13

    链接:https://www.nowcoder.com/acm/contest/80/A来源:牛客网 zzy的小号 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 262144K,其他 ...

  4. Wannafly挑战赛13 B:Jxc军训(逆元)

    题目描述 在文某路学车中学高一新生军训中,Jxc正站在太阳下站着军姿,对于这样的酷热的阳光,Jxc 表示非常不爽. Jxc将天空看做一个n*n的矩阵,此时天上有m朵云,这些云会随机分布在m个不同的位置 ...

  5. Wannafly挑战赛17 A 走格子【矩阵行走/模拟】

    [链接]:A [分析]:可以设置方向数组和标记数组.当不合法(越界/访问过)就转向,转向可以用now=(now+1)%4 [代码]: #include <bits/stdc++.h> #d ...

  6. Wannafly 挑战赛 19 参考题解

    这一次的 Wannafly 挑战赛题目是我出的,除了第一题,剩余的题目好像对大部分算法竞赛者来说好像都不是特别友好,但是个人感觉题目质量还是过得去的,下面是题目链接以及题解. [题目链接] Wanna ...

  7. Wannafly挑战赛25游记

    Wannafly挑战赛25游记 A - 因子 题目大意: 令\(x=n!(n\le10^{12})\),给定一大于\(1\)的正整数\(p(p\le10000)\)求一个\(k\)使得\(p^k|x\ ...

  8. Wannafly挑战赛27

    Wannafly挑战赛27 我打的第一场$Wannafly$是第25场,$T2$竟然出了一个几何题?而且还把我好不容易升上绿的$Rating$又降回了蓝名...之后再不敢打$Wannafly$了. 由 ...

  9. Wannafly挑战赛21A

    题目链接 Wannafly挑战赛21A 题解 代码 #include <cstdio> #include <cmath> #define MAX 1000005 #define ...

随机推荐

  1. J2SE 8的流库 --- 收集处理结果

    分类:简单计算, 收集到映射表中 , 群组和分组, 下游收集器, 约简操作 reduce() ArrayList<String> arrayList = new ArrayList< ...

  2. Windows 端口占用解决

  3. java通过过滤器 设置跨域允许

    前人种树:https://www.cnblogs.com/CBDoctor/p/4235082.htmlhttps://blog.csdn.net/yuting0787/article/details ...

  4. Unable to locate Spring NamespaceHandler for XML schema namespace

    1. 问题 本文将讨论Spring中最常见的配置问题 —— Spring的一个命名空间的名称空间处理程序没有找到. 大多数情况下,是由于一个特定的Spring的jar没有配置在classpath下,让 ...

  5. Haskell语言学习笔记(73)Existentials

    Existentials(存在类型) Existentially quantified types(Existentially types,Existentials)是一种将一组类型归为一个类型的方式 ...

  6. Python使用xlwt模块 操作Excel文件

    导出Excel文件     1. 使用xlwt模块 import xlwt import xlwt    # 导入xlwt # 新建一个excel文件 file = xlwt.Workbook() # ...

  7. 一个神奇的BUG :Failed to finalize session : INSTALL_FAILED_INVALID_APK: /data/app/vmdl99393454.tmp/10_slice__ signatures are inconsistent

    Android Studio 在Gradle编译完成后安装APK时总是失败,EventLog提示如下信息: Failed to finalize session : INSTALL_FAILED_IN ...

  8. Delphi实现图像文本旋转特效完整代码

    Delphi实现图像文本旋转特效完整代码,本程序利用的控件主要是Panel 控件.Image 控件.Edit 控件.Label 控件和Button 控件.本程序的关键是利用Delphi 的bmp_ro ...

  9. 解决在.NET 4.0下无法发送包含尖括号等请求的问题

    今天在做一个简单的数据添加时,使用jQuery的ajax的post操作,发现如果包含尖括号等html格式数据的请求无法发给服务端. 以往的做法就是在页面中或web.config中的pages节点中增加 ...

  10. 3Ds Max 2014

    原文地址:https://blog.csdn.net/u011518678/article/details/50764835 1.3Ds Max 2014 的安装和激活 激活地址: https://j ...