poj 2411 新写法】的更多相关文章

别以为我在刷水题.... 今天做了场srm,500pt想到了是dp但是无从下手,但是看了rng_58的神代码后顿觉海阔天空啊(盯着看了一个下午),相比于一年前的写法,真的是不忍直视啊, TC真是个好地方...赞! 其实就是将普通的铺砖块问题用类似于插头dp逐格递推的思路来写.下面的代码相信大家应该都能看懂. #include <cstdio> #include <cstring> #include <algorithm> long long dp[2][1<<…
题目地址:http://poj.org/problem?id=1703 Sample Input 1 5 5 A 1 2 D 1 2 A 1 2 D 2 4 A 1 4 Sample Output Not sure yet. In different gangs. In the same gang. 题目解读:T组数据,每组输入n m,n代表有n个人, m代表有m次操作.操作A x y:表示询问x y的关系是怎样的? 三中情况:不确定,属于同一个集合, 不属于同一个集合操作D x y:表示x y…
题目:id=2411" target="_blank">poj 2411 Mondriaan's Dream 题意:给出一个n*m的矩阵,让你用1*2的矩阵铺满,然后问你最多由多少种不同的方案. 分析:这是一个比較经典的题目.网上各种牛B写法一大堆.题解也是 我们能够定义状态:dp[i][st]:在第 i 行状态为 st 的时候的最慷慨案数. 然后转移方程:dp[i][st] = sum (dp[i-1][ss]) 即全部的当前行都是由上一行合法的状态转移而来. 而状态…
<精通Matlab神经网络>书中示例10-16,在创建BP网络时,原来的写法是: net = newff(minmax(alphabet),[S1 S2],{'logsig' 'logsig'},'traingdx'); 因为运行过程中有提示,自然想改成新写法(参考之前的随笔<MATLAB神经网络函数NEWFF()新旧用法差异>): net = newff(alphabet, targets, S1, {'logsig', 'logsig'}, 'traingdx'); net.d…
题目传送门 /* 题意:一个h*w的矩阵(1<=h,w<=11),只能放1*2的模块,问完全覆盖的不同放发有多少种? 状态压缩DP第一道:dp[i][j] 代表第i行的j状态下的种数(状态即为二进制10101110101...的样子) 横着的定义为11,竖着的定义为01,当两行的状态已填满并且没有出现奇数个1时,累加个数 即两行状态相或要全为1,两行相与要没有连续的1的个数是奇数个 */ #include <cstdio> #include <iostream> #in…
IOS数组.字典.NSNumber 新写法—— @[].@{}   //标准写法 NSNumber * number = [NSNumber numberWithInt:]; NSArray * array = [NSArray arrayWithObjects:@"one", @"two", nil]; NSDictionary * dict = [NSDictionary dictionaryWithObjectsAndKeys:@"value1&qu…
一.Description Squares and rectangles fascinated the famous Dutch painter Piet Mondriaan. One night, after producing the drawings in his 'toilet series' (where he had to use his toilet paper to draw on, for all of his paper was filled with squares and…
Mondriaan's Dream POJ - 2411 可以用状压dp,但是要打一下表.暴力枚举行.这一行的状态.上一行的状态,判断如果上一行的状态能转移到这一行的状态就转移. 状态定义:ans[i][S]表示i行前已经全部填满,i行已经填上的列为集合S.如果有竖着的,全部当做用这一行的去补满上一行缺的. (貌似还是插头dp的入门题) #include<cstdio> #include<cstring> typedef long long LL; LL f[][]; LL h,w…
题目:http://poj.org/problem?id=2411 Input The input contains several test cases. Each test case is made up of two integer numbers: the height h and the width w of the large rectangle. Input is terminated by h=w=0. Otherwise, 1<=h,w<=11. Output For eac…
题目链接: http://poj.org/problem?id=2411 题目意思: 给一个n*m的矩形区域,将1*2和2*1的小矩形填满方格,问一共有多少种填法. 解题思路: 用轮廓线可以过. 对每一个格子,枚举上一个格子的状态,得到当前格子的所有状态值. dp[cur][s]表示当前格子的轮廓线状态为s的情况下的总数 代码: #include<iostream> #include<cmath> #include<cstdio> #include<cstdlib…