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 ...
随机推荐
- POI 读取 Excel 文件
import java.io.File; import java.io.FileOutputStream; import java.io.InputStream; import java.io.Out ...
- oracle row_number的使用
create table studentInfo( id number(8) primary key, name varchar2(20) not null, ObjectName varcha ...
- MySQL开启日志跟踪
在开发过程中有时候会遇到sql相关的问题,但是有时候代码中不会直接看到真实的sql,想要看到mysql中实际执行的是什么sql,可以通过开启日志跟踪方式查看. 1 开启日志跟踪 SET GLOBAL ...
- vue-ssr 文档备注
https://ssr.vuejs.org/zh/universal.html 基本用法 通过vue-server-renderer插件的createRenderer方法创建一个renderer,再调 ...
- 学习Python第一天,命令很多跟Linux还有脚本语言相似。
学习Python第二天,看了一天,有点头疼,准备先休息一会,再继续.有一点C语言和Java基础,学起来不是很费劲.学习热情尚好. 学习了dir,math模块,import加载模块,有跟Linux相似的 ...
- (转)在Xcode 7上直接使用Clang Address Sanitizer
原文地址: http://www.cocoachina.com/ios/20150730/12830.html WWDC 2015上,除了Swift 2.0外,还有一个令人激动的消息:可以直接在Xco ...
- MySql update inner join!MySql跨表更新 多表update sql语句?如何将select出来的部分数据update到另一个表里面?
项目中,评论数,关注数等数据,是实时更新的.+1,-1 这种. 有的时候,可能统计不准确. 需要写一个统计工具,更新校准下. 用Java写SQL和函数,代码很清晰,方便扩展,但是太慢了. 为了简单起见 ...
- python基础学习笔记——模块
自定义模块 我们今天来学习一下自定义模块(也就是私人订制),我们要自定义模块,首先就要知道什么是模块啊 一个函数封装一个功能,比如现在有一个软件,不可能将所有程序都写入一个文件,所以咱们应该分文件,组 ...
- 关于awk中NR、FNR、NF、$NF、FS、OFS的说明
一.NR和FNR 1.释义 NR: 表示当前读取的行数 FNR:当前修改了多少行 2.举例 比如现在AWK处理到第五行.第一行没有进行操作,2,3,4,5行进行了操作,那么NR=5,FNR=4 NR= ...
- 00031_ArrayList集合中常用的方法
1.ArrayList集合提供的一些常用方法 import java.util.ArrayList; public class ArrayListDemo01 { public static void ...