poj 2663 (轮廓线dp)
来源:互联网 发布:淘宝客怎么加群 编辑:程序博客网 时间:2024/05/02 03:03
int main()
{
int cur,n,i,j,k,m;
int dp[2][35];
while(scanf("%d",&n)!=EOF)
{
if(n==0)
{
puts("1");continue;
}
if(n==1)
{
puts("0");continue;
}
if(n==-1)
break;
m=3;
memset(dp,0,sizeof(dp));
cur=0;
dp[cur][(1<<m)-1]=1;
for(i=1;i<=n;i++)
{
for(j=1;j<=m;j++)
{
cur=1-cur;
memset(dp[cur],0,sizeof(dp[cur]));
for(k=0;k<(1<<m);k++)
{
if(k&(1<<(m-1)))//不放,上层必须为1才允许不放
dp[cur][(k<<1)^(1<<m)]+=dp[1-cur][k];//km-1 k3 k2 k1 0
if(i!=1&&!(k&(1<<(m-1))))//上放,i不能是顶层,且上层必须没放
dp[cur][(k<<1)+1]+=dp[1-cur][k];
if(j!=1&&!(k&1)&&(k&(1<<(m-1))))//左放,低位必须为0,高位必须为1
dp[cur][(k<<1)^3^(1<<m)]+=dp[1-cur][k];
}
}
}
printf("%d\n",dp[cur][(1<<m)-1]);
}
return 0;
}
{
int cur,n,i,j,k,m;
int dp[2][35];
while(scanf("%d",&n)!=EOF)
{
if(n==0)
{
puts("1");continue;
}
if(n==1)
{
puts("0");continue;
}
if(n==-1)
break;
m=3;
memset(dp,0,sizeof(dp));
cur=0;
dp[cur][(1<<m)-1]=1;
for(i=1;i<=n;i++)
{
for(j=1;j<=m;j++)
{
cur=1-cur;
memset(dp[cur],0,sizeof(dp[cur]));
for(k=0;k<(1<<m);k++)
{
if(k&(1<<(m-1)))//不放,上层必须为1才允许不放
dp[cur][(k<<1)^(1<<m)]+=dp[1-cur][k];//km-1 k3 k2 k1 0
if(i!=1&&!(k&(1<<(m-1))))//上放,i不能是顶层,且上层必须没放
dp[cur][(k<<1)+1]+=dp[1-cur][k];
if(j!=1&&!(k&1)&&(k&(1<<(m-1))))//左放,低位必须为0,高位必须为1
dp[cur][(k<<1)^3^(1<<m)]+=dp[1-cur][k];
}
}
}
printf("%d\n",dp[cur][(1<<m)-1]);
}
return 0;
}
0 0
- poj 2663 (轮廓线dp)
- POj 3420 (轮廓线dp)
- poj 2411 状态压缩dp+轮廓线
- POJ 2411 HDU4804【轮廓线+状压DP】
- poj - 2411 - Mondriaan's Dream(轮廓线dp)
- poj 2411 Mondriaan's Dream 轮廓线dp
- POJ 2411 Mondriaan's Dream 轮廓线DP
- poj 2411 经典轮廓线dp+位运算
- POJ 2411 Mondriaan's Dream(插头DP,轮廓线)
- POJ-2411 Mondriaan's Dream(轮廓线dp)
- [POJ] 2411 Mondriaan's Dream [轮廓线dp]
- poj2411 轮廓线dp
- 轮廓线dp初步
- POJ2144 轮廓线DP
- UVA11270 轮廓线DP
- POJ-2411-Mondriaan's Dream-轮廓线dp(插头dp)
- T解 POJ-2411 Mondriaan's Dream [轮廓线DP] || [状压DP]
- hdu 4804 轮廓线dp
- 杭电2955Robberies(01背包)
- lkeetcode 57. Insert Interval
- Oracle学习笔记四 --- 变量及表管理
- SSM项目启动tomcat抛出ClassNotFoundException
- ML:Scikit-Learn 学习笔记(1) --- Nearest Neighbors 最近邻 综述
- poj 2663 (轮廓线dp)
- No tag "datetimepicker" defined in tag library imported with prefix "s"
- 白板讲解
- MVC3写的一个留言板
- 承诺
- 爱情游戏
- 简单的色调
- LeetCode:简化路径(Simplify Path)
- Oracle学习笔记五 --- 表查询