博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Codeforces 888F Connecting Vertices 区间dp (看题解)
阅读量:5035 次
发布时间:2019-06-12

本文共 1635 字,大约阅读时间需要 5 分钟。

这种题就是看一眼就知道区间dp, 写一天也写不出来。。

f[ i ][ j ]表示区间[ i, j ] i 和 j  连边所构成的方案数。

g[ i ][ j ]表示区间[ i, j ] i 和 j 不连边所构成的方案数。

求g 的时候枚举 j 和 k (并且这个 k 是和 j 连边的最小标号)。。。

#include
#define LL long long#define LD long double#define ull unsigned long long#define fi first#define se second#define mk make_pair#define PLL pair
#define PLI pair
#define PII pair
#define SZ(x) ((int)x.size())#define ALL(x) (x).begin(), (x).end()#define fio ios::sync_with_stdio(false); cin.tie(0);using namespace std;const int N = 500 + 7;const int inf = 0x3f3f3f3f;const LL INF = 0x3f3f3f3f3f3f3f3f;const int mod = 1e9 + 7;const double eps = 1e-8;const double PI = acos(-1);template
inline void add(T& a, S b) {a += b; if(a >= mod) a -= mod;}template
inline void sub(T& a, S b) {a -= b; if(a < 0) a += mod;}template
inline bool chkmax(T& a, S b) { return a < b ? a = b, true : false;}template
inline bool chkmin(T& a, S b) { return a > b ? a = b, true : false;}int f[N][N], g[N][N];int n, G[N][N];int main() { scanf("%d", &n); for(int i = 1; i <= n; i++) for(int j = 1; j <= n; j++) scanf("%d", &G[i][j]); for(int i = 1; i <= n; i++) f[i][i] = 1; for(int len = 2; len <= n; len++) { for(int i = 1, j; i + len - 1 <= n; i++) { j = i + len - 1; for(int k = i; k < j; k++) { if(G[i][j]) add(f[i][j], 1LL * (f[i][k] + g[i][k]) * (f[k + 1][j] + g[k + 1][j]) % mod); if(k > i && G[k][j]) add(g[i][j], 1LL * (f[i][k] + g[i][k]) * f[k][j] % mod); } } } printf("%d\n", (f[1][n] + g[1][n]) % mod); return 0;}/*1 41*/

 

转载于:https://www.cnblogs.com/CJLHY/p/10827516.html

你可能感兴趣的文章
百度编辑器图片在线流量返回url改动
查看>>
我对你的期望有点过了
查看>>
微信小程序wx:key以及wx:key=" *this"详解:
查看>>
下拉框比较符
查看>>
2.2.5 因子的使用
查看>>
css选择器
查看>>
photoplus
查看>>
Python 拓展之推导式
查看>>
[Leetcode] DP-- 474. Ones and Zeroes
查看>>
80X86寄存器详解<转载>
查看>>
c# aop讲解
查看>>
iterable与iterator
查看>>
返回顶部(动画)
查看>>
webpack+react+antd 单页面应用实例
查看>>
Confluence 6 SQL Server 数据库驱动修改
查看>>
Confluence 6 通过 SSL 或 HTTPS 运行 - 备注和问题解决
查看>>
【47.76%】【Round #380B】Spotlights
查看>>
Git(使用码云)
查看>>
分享Java web 开发必游之路
查看>>
IIS初始化(预加载),解决第一次访问慢,程序池被回收问题(转载)
查看>>