区间dp。记录可行性即可。

#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
int c[],len;
bool f[][][],mp[][],flag;
char ch1,ch2;
char gt()
{
char tmp;
scanf("%c",&tmp);
while(tmp<||tmp>)scanf("%c",&tmp);
return tmp;
}
int num(char c)
{
if(c=='W')return ;if(c=='I')return ;
if(c=='N')return ;if(c=='G')return ;
}
char chr(int a)
{
if(a==)return 'W';if(a==)return 'I';
if(a==)return 'N';if(a==)return 'G';
}
int main()
{
scanf("%d%d%d%d",&c[],&c[],&c[],&c[]);
for(int i=;i<=;i++)
for(int j=;j<=c[i];j++)
{
scanf(" %c%c",&ch1,&ch2);
mp[num(ch1)*+num(ch2)][i]=;
}
ch1=gt();
while(++len)
{
f[len][len][num(ch1)]=;
scanf("%c",&ch1);
if(ch1=='\n')break;
}
for(int i=;i<=len;i++)
{
int lm=len-i+;
for(int l=;l<=lm;l++)
{
int r=l+i-;
for(int k=l;k<r;k++)
for(int x=;x<=;x++)
if(f[l][k][x])
for(int y=;y<=;y++)
if(f[k+][r][y])
for(int j=;j<=;j++)
f[l][r][j]|=mp[x*+y][j];
}
}
for(int i=;i<=;i++)
if(f[][len][i])printf("%c",chr(i)),flag=;
if(!flag)printf("The name is wrong!");
return ;
}

bzoj1055玩具取名的更多相关文章

  1. bzoj1055玩具取名——区间DP

    题目:https://www.lydsy.com/JudgeOnline/problem.php?id=1055 区间DP,注意初始化!! 因为没记忆化,TLE了一晚上,区间DP尤其要注意不重复递归! ...

  2. 【BZOJ1055】[HAOI2008]玩具取名(动态规划)

    [BZOJ1055][HAOI2008]玩具取名(动态规划) 题面 BZOJ 洛谷 题解 裸的区间\(dp\),设\(f[i][j][W/I/N/G]\)表示区间\([i,j]\)能否由某个字母替换过 ...

  3. 【bzoj1055】[HAOI2008]玩具取名

    [bzoj1055][HAOI2008]玩具取名 2014年12月1日3,0111 Description 某人有一套玩具,并想法给玩具命名.首先他选择WING四个字母中的任意一个字母作为玩具的基本名 ...

  4. [bzoj1055][HAOI2008]玩具取名_区间dp

    玩具取名 bzoj-1055 HAOI-2008 题目大意:给你一个用W,I,N,G组成的字符串,给你一些这四个字符之间的变换规则,每一个变换规则都是由一个字符变成两个字符,问这个字符串是否可能是由一 ...

  5. BZOJ1055: [HAOI2008]玩具取名[区间DP]

    1055: [HAOI2008]玩具取名 Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 1588  Solved: 925[Submit][Statu ...

  6. BZOJ1055: [HAOI2008]玩具取名

    ... #include<bits/stdc++.h> using namespace std; int q[255]; char s[205]; char p[]={'W','I','N ...

  7. 【BZOJ-1055】玩具取名 区间DP

    1055: [HAOI2008]玩具取名 Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 1560  Solved: 907[Submit][Statu ...

  8. bzoj千题计划199:bzoj1055: [HAOI2008]玩具取名

    http://www.lydsy.com/JudgeOnline/problem.php?id=1055 区间DP dp[i][j][k] 表示区间[i,j]能否合成k #include<cst ...

  9. 【BZOJ1055】[HAOI2008]玩具取名(区间DP)

    [HAOI2008]玩具取名 题目描述 某人有一套玩具,并想法给玩具命名.首先他选择\(WING\)四个字母中的任意一个字母作为玩具的基本名字.然后他会根据自己的喜好,将名字中任意一个字母用" ...

随机推荐

  1. 供应商API补充(详解EBS接口开发之供应商导入)(转)

    原文地址  供应商导入的API补充(详解EBS接口开发之供应商导入) --供应商 --创建 AP_VENDOR_PUB_PKG.Create_Vendor ( p_api_version IN NUM ...

  2. 使用API更新供应商名称及曾用名

    原文地址 更新供应商名称 EBS R12 (12.1.3) 更新供应商名称或替代供应商名称不能直接使用 pos_vendor_pub_pkg.update_vendor(p_vendor_rec =& ...

  3. quartz---触发job时间和结束时间

    quartz:Trigger:触发job时间和结束时间 package com.imooc.demo.helloQuartz; import java.text.SimpleDateFormat; i ...

  4. linux磁盘清理记录

    执行df -h查看自己的数据磁盘到达97% 使用du -h --max-depth=1  查看数据占用较大的文件 清理记录 1.mysql慢查询日志 # mv slow.log slow.log.ba ...

  5. 【转】POJ百道水题列表

    以下是poj百道水题,新手可以考虑从这里刷起 搜索1002 Fire Net1004 Anagrams by Stack1005 Jugs1008 Gnome Tetravex1091 Knight ...

  6. 大数据技术Hadoop面试题

    1. 下面哪个程序负责 HDFS 数据存储.答案C datanode a)NameNodeb)Jobtrackerc)Datanode d)secondaryNameNodee)tasktracker ...

  7. DevExpress v17.2新版亮点—Bootstrap篇(一)

    用户界面套包DevExpress v17.2日前终于正式发布,本站将以连载的形式为大家介绍各版本新增内容.本文将介绍了Bootstrap Controls v17.2 的CardView.Charts ...

  8. slf4j简单使用

    一 slf4j+log4j 1.添加依赖 <!-- https://mvnrepository.com/artifact/org.slf4j/slf4j-log4j12 --> <d ...

  9. MySQL主从数据一致性问题修复

    MySQL主从数据一致性问题修复 前面,我们使用pt-table-checksum 可以检测出主从数据是否一致的问题.发现问题后,我们怎么解决这些问题,也是我们必须要会的技能. 修复主从数据一致性问题 ...

  10. promise的生命周期

    每个promise都会经历一个短暂的生命周期: 先是处于进行中(pending)状态,此时操作并未完成,所以他也是未处理的(unsettled): 一旦异步惭怍执行结束,promise则 变为已处理( ...