【Codeforces Round #439 (Div. 2) C】The Intriguing Obsession
【链接】 链接
【题意】
给你3种颜色的点。
每种颜色分别a,b,c个。
现在让你在这些点之间加边。
使得,同种颜色的点之间,要么不连通,要么连通,且最短路至少为3
边是无向边。
让你输出方案数
【题解】
求出a点集到b点集之间的连边方案数;
具体的,设dp[i][j]表示a点集个数为i,b点集个数为j时候的连边方案数。
(可以不连)
则通过简单的dp就能算出来所有的dp..
(显然问题是独立的)
然后最后答案就是dp[a][b]*dp[b][c]*dp[a][c];
即a到b之间的连边,b到c之间的连边,a到c之间的连边。
然后乘起来,就能覆盖到所有的情况了。
只能a->b->c->a->b....这样构图。
不然没有方案。
【错的次数】
在这里输入错的次数
【反思】
下次做题的时候前面几题做快一点,留时间给后面的题!
【代码】
#include <bits/stdc++.h>
#define ll long long
using namespace std;
const int N = 5e3;
const ll MOD = 998244353;
ll dp[N+10][N+10];
int main()
{
for (int i = 0;i <= N;i++)
{
dp[0][i] = 1;
dp[i][0] = 1;
}
for (int i = 1;i <=N;i++)
for (int j = 1;j <= N;j++)
dp[i][j] = (dp[i-1][j] + dp[i-1][j-1]*j%MOD)%MOD;
ll a,b,c;
scanf("%lld%lld%lld",&a,&b,&c);
printf("%lld\n",dp[a][b]*dp[b][c]%MOD*dp[c][a]%MOD);
return 0;
}
【Codeforces Round #439 (Div. 2) C】The Intriguing Obsession的更多相关文章
- 【Codeforces Round #439 (Div. 2) B】The Eternal Immortality
[链接] 链接 [题意] 求b!/a!的最后一位数字 [题解] b-a>=20的话 a+1..b之间肯定有因子2和因子5 答案一定是0 否则暴力就好 [错的次数] 在这里输入错的次数 [反思] ...
- 【Codeforces Round #439 (Div. 2) A】The Artful Expedient
[链接] 链接 [题意] [题解] 暴力 [错的次数] 在这里输入错的次数 [反思] 在这里输入反思 [代码] #include <bits/stdc++.h> using namespa ...
- 【Codeforces Round #432 (Div. 1) B】Arpa and a list of numbers
[链接]h在这里写链接 [题意] 定义bad list是一个非空的.最大公约数为1的序列.给定一个序列,有两种操作:花费x将一个元素删除.花费y将一个元素加1,问你将这个序列变为good list所需 ...
- 【Codeforces Round #420 (Div. 2) C】Okabe and Boxes
[题目链接]:http://codeforces.com/contest/821/problem/C [题意] 给你2*n个操作; 包括把1..n中的某一个数压入栈顶,以及把栈顶元素弹出; 保证压入和 ...
- 【Codeforces Round #420 (Div. 2) B】Okabe and Banana Trees
[题目链接]:http://codeforces.com/contest/821/problem/B [题意] 当(x,y)这个坐标中,x和y都为整数的时候; 这个坐标上会有x+y根香蕉; 然后给你一 ...
- 【Codeforces Round #420 (Div. 2) A】Okabe and Future Gadget Laboratory
[题目链接]:http://codeforces.com/contest/821/problem/A [题意] 给你一个n*n的数组; 然后问你,是不是每个位置(x,y); 都能找到一个同一行的元素q ...
- 【Codeforces Round #423 (Div. 2) C】String Reconstruction
[Link]:http://codeforces.com/contest/828/problem/C [Description] 让你猜一个字符串原来是什么; 你知道这个字符串的n个子串; 且知道第i ...
- 【Codeforces Round #423 (Div. 2) B】Black Square
[Link]:http://codeforces.com/contest/828/problem/B [Description] 给你一个n*m的格子; 里面包含B和W两种颜色的格子; 让你在这个格子 ...
- 【Codeforces Round #423 (Div. 2) A】Restaurant Tables
[Link]:http://codeforces.com/contest/828/problem/A [Description] 有n个组按照时间顺序来餐馆; 每个组由一个人或两个人组成; 每当有一个 ...
随机推荐
- JS实现下拉菜单的功能
<!DOCTYPE html> <html> <head> <meta charset = "utf8"> <title> ...
- 如何优雅的写UI——(2)MFC下基于CFormView的文档视图程序
在MFC中可以创建多种类型的窗口程序,如对话框程序.单文档结构程序(非文档/视图结构).单文档(文档/视图结构)以及多文档视图结构程序等. 在编写一般的小工具时,我们的首选显然是对话框程序,不过基于对 ...
- Intent调用系统拍照程序,返回图片太小的问题
之前採用的方式(返回的照片会被压缩,不能达到预期效果): Intent intent = new Intent(); Intent intent_camera = getPackageManager( ...
- 深入理解javascript之原型
理解原型 原型是一个对象.其它对象能够通过它实现属性继承. 不论什么一个对象都能够成为继承,全部对象在默认的情况下都有一个原型.由于原型本身也是对象,所以每一个原型自身又有一个原型. 不论什么一个对象 ...
- 企业网管软件之SOLARWINDS实战-制作拓扑图
企业网管软件之SOLARWINDS实战-制作拓扑图-开始 企业网管软件之SOLARWINDS实战-制作拓扑图 本文出自 "李晨光原创技术博客" 博客,谢绝转载!
- 玲珑杯 Round 19 B Buildings (RMQ + 二分)
DESCRIPTION There are nn buildings lined up, and the height of the ii-th house is hihi. An inteval [ ...
- 使用Multiplayer Networking做一个简单的多人游戏例子-1/2
原文地址: http://blog.csdn.net/cocos2der/article/details/51006463 本文主要讲述了如何使用Multiplayer Networking开发多人游 ...
- 腾讯官网生成qq在线客服代码
http://jingyan.baidu.com/article/e2284b2b42ce8ce2e6118ddd.html
- Linux 进程通信之管道
管道是单向的.先进先出的,它把一个进程的输出和还有一个进程的输入连接在一起.一个进程(写进程)在管道的尾部写入数据,还有一个进程(读进程)从管道的头部读出数据.数据被一个进程读出后,将被从管道中删除, ...
- C 字符/字符串经常使用函数
string.h中经常使用函数 char * strchr(char * str ,char ch); 从字符串str中查找首次出现字符ch的位置,若存在返回查找后的地址.若不存在则返回NULL vo ...