code forces 1051 d
看的这个题解:http://www.cnblogs.com/tobyw/p/9685639.html
写的比较清楚。
矩阵类型的计数题
比赛时感觉就像是个dp,然后就跳过了。
现在看着题解写一下,感觉还算可以理解。但是没有dp的思维啊,肯定想不出来的。。
#include <bits/stdc++.h> using namespace std; long long dp[][][]; const long long mod = ;
int main() { long long n,k; cin>>n>>k; memset(dp,,sizeof(dp)); dp[][][] = ; //
dp[][][] = ; //
dp[][][] = ; //
dp[][][] = ; //11 //cout<<k<<endl;
for(int i = ; i <= n; i++) {
// i列最多i * 2 个联通块
for(int j = ; j <= (i << ); j++) {
//cout<<dp[n][k][0]<<' '<<dp[n][k][1]<<' '<<dp[n][k][2]<<' '<<dp[n][k][3]<<endl;
//cout<<j<<endl;
// 这一列填00的
dp[i][j][] = dp[i - ][j][] + dp[i - ][j][] + dp[i - ][j][] + dp[i - ][j - ][];
dp[i][j][] %= mod; // 填01
dp[i][j][] = dp[i - ][j - ][] + dp[i - ][j][] + dp[i - ][j - ][] + dp[i - ][j - ][];
dp[i][j][] %= mod; // 填10
dp[i][j][] = dp[i - ][j - ][] + dp[i - ][j - ][] + dp[i - ][j][] + dp[i - ][j - ][];
dp[i][j][] %= mod; // 填11
dp[i][j][] = dp[i - ][j - ][] + dp[i - ][j][] + dp[i - ][j][] + dp[i - ][j][];
dp[i][j][] %= mod; }
} long long ans = ;
//cout<<dp[n][k][0]<<' '<<dp[n][k][1]<<' '<<dp[n][k][2]<<' '<<dp[n][k][3]<<endl;
ans = ans + dp[n][k][] + dp[n][k][] + dp[n][k][] + dp[n][k][];
ans = ans % mod;
//cout<<ans<<endl;
printf("%I64d\n", ans); return ;
}
code forces 1051 d的更多相关文章
- 思维题--code forces round# 551 div.2
思维题--code forces round# 551 div.2 题目 D. Serval and Rooted Tree time limit per test 2 seconds memory ...
- Code Forces 796C Bank Hacking(贪心)
Code Forces 796C Bank Hacking 题目大意 给一棵树,有\(n\)个点,\(n-1\)条边,现在让你决策出一个点作为起点,去掉这个点,然后这个点连接的所有点权值+=1,然后再 ...
- Code Forces 833 A The Meaningless Game(思维,数学)
Code Forces 833 A The Meaningless Game 题目大意 有两个人玩游戏,每轮给出一个自然数k,赢得人乘k^2,输得人乘k,给出最后两个人的分数,问两个人能否达到这个分数 ...
- Code Forces 543A Writing Code
题目描述 Programmers working on a large project have just received a task to write exactly mm lines of c ...
- code forces 999C Alphabetic Removals
C. Alphabetic Removals time limit per test 2 seconds memory limit per test 256 megabytes input stand ...
- code forces 383 Arpa's loud Owf and Mehrdad's evil plan(有向图最小环)
Arpa's loud Owf and Mehrdad's evil plan time limit per test 1 second memory limit per test 256 megab ...
- code forces 382 D Taxes(数论--哥德巴赫猜想)
Taxes time limit per test 2 seconds memory limit per test 256 megabytes input standard input output ...
- code forces Watermelon
/* * Watermelon.cpp * * Created on: 2013-10-8 * Author: wangzhu */ /** * 若n是偶数,且大于2,则输出YES, * 否则输出NO ...
- code forces Jeff and Periods
/* * c.cpp * * Created on: 2013-10-7 * Author: wangzhu */ #include<cstdio> #include<iostrea ...
随机推荐
- 【JavaScript】两种常见JS面向对象写法
基于构造函数 function Circle(r) { this.r = r; } Circle.PI = 3.14159; Circle.prototype.area = function() { ...
- 对于WebAssembly编译出来的.wasm文件js如何调用
WebAssembly也叫浏览器字节码技术 这里就不过多的解释了网上很多介绍 主要是让大家知道在js里面如何调用执行它,我之前看WebAssemblyAPI时候反正是看得一脸懵逼 也是为了大家能更快的 ...
- MySQL 资料库概论与MySQL 安装
本文来自:https://www.breakyizhan.com/sql/5648.html 1. 储存与管理资料 储存与管理资料一直是资讯应用上最基本.也是最常见的技术.在还没有使用电脑来管理你的资 ...
- 使用 HTML5 Geolocation 构建基于地理位置的 Web 应用学习网站分享
HTML5 中的新功能 HTML5 是最新一代的 HTML 规范,是 W3C 与 WHATWG 合作的结果,目前仍外于开发中.自从上一代 HTML4,Web 世界已经发生了巨大的变化,HTML5 的到 ...
- verilog RTL编程实践之四
1.verilog平时三个级别: 1.gate level: and or not xor 2.RTL level: reg comb seq 3.behavior:+ – * / 2.system ...
- Perl学习之四:语句
语句:if/unless while/foreach/do..while/for 1.表达式真价值总结任何表达式都有真假值:逻辑.字符串.列表.文件 2.if if(expression1){ sta ...
- Web框架之Django_03 路由层了解(路有层 无名分组、有名分组、反向解析、路由分发 视图层 JsonResponse,FBV、CBV、文件上传)
摘要: 路由层 无名分组 有名分组 反向解析 路由分发 名称空间 伪静态网页.虚拟环境 视图层 JsonResponse FBV 与 CBV(function base views与class bas ...
- 基于顺序链表的栈的顺序存储的C风格实现
头文件: #ifndef _SEQSTACK_H_ #define _SEQSTACK_H_ typedef void SeqStack; //创建一个栈 SeqStack* SeqStack_Cre ...
- joyoi1957 「Poetize5」Vani和Cl2捉迷藏
最小路径可重点覆盖.先传递闭包,然后拆点,\(n-\)最大匹配,看算法竞赛进阶指南. #include <iostream> #include <cstring> #inclu ...
- 学习笔记6——插件 API,“过滤器”(Filters)和“动作”(Actions)
WordPress 中有一种叫执行挂勾的机制,允许插件把一些功能“挂载”到 WordPress 当中.也就是说,在系统运行至某一个环节时,去调用插件内的一些函数.执行挂勾分为两种: 动作 (Actio ...