不难想到是一个布尔型dp,

不难想到用f[i,j,k]表示区间[i,j]能否变为字母k

不难想到对于f[i,j,k],拆[i,j]成两个区间,然后穷举k的每一个变换来判断

感觉记忆化搜索写的比较顺,就写了记忆化

 const a:array[..] of char=('W','I','N','G');

 var b:array[..] of longint;
    f:array[..,..,..] of integer;
    w:array[..,..] of longint;
    c:array[..] of longint;
    l,i,j,k,e,n,m,p:longint;
    flag:boolean;
    s:string; function exc(x:char):longint;
  begin
    if x='W' then exit()
    else if x='I' then exit()
    else if x='N' then exit()
    else if x='G' then exit();
  end; function search(l,r,k:longint):integer;
  var i,j,x1,x2:longint;
  begin
    if f[l,r,k]<> then exit(f[l,r,k]);
    if l=r then
    begin
      f[l,l,b[l]]:=;
      if k=b[l] then exit()
      else begin
        f[l,l,k]:=-;
        exit(-);
      end;
    end;
    for i:= to c[k] do
    begin
      x1:=(w[k,i]-) div +;
      x2:=(w[k,i]-) mod +;
      for j:=l to r- do
      begin
        if (search(l,j,x1)=) and (search(j+,r,x2)=) then
        begin
          f[l,r,k]:=;
          exit();
        end;
      end;
    end;
    f[l,r,k]:=-;
    exit(-);
  end; begin
  for i:= to do
    read(c[i]);
  readln;
  for i:= to do
    for j:= to c[i] do
    begin
      readln(s);
      p:=(exc(s[])-)*+exc(s[]);
      w[i,j]:=p;
    end;   readln(s);
  n:=length(s);   for i:= to n do
    b[i]:=exc(s[i]);   flag:=false;
  for i:= to do
    if search(,n,i)= then
    begin
      write(a[i]);
      flag:=true;
    end;
  if not flag then writeln('The name is wrong!') else writeln;
end.

bzoj1055的更多相关文章

  1. 【题解】 bzoj1055: [HAOI2008]玩具取名 (动态规划)

    bzoj1055,懒得复制,戳我戳我 Solution: 区间动规(以后开始动规会在solution前面标注是啥动规 我觉的这道题挺难想了,但其实状态定义了一下子就出来了(还是不行啊) 我们定义状态\ ...

  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 ||P4290 [HAOI2008]玩具取名

    目录 链接 思路 代码 链接 luogu bzoj 思路 区间dp 然后\(f[i][j][k]\) 区间\([i,j]\)能否变成\(k\)字符 (字符当然得转化一下) 字符的个数不多,直接暴力\( ...

随机推荐

  1. springmvc中url-pattern的大坑

    <servlet> <servlet-name>springmvc</servlet-name> <servlet-class>org.springfr ...

  2. CSS3 transition-timing-function

    CSS3 transition-timing-function 属性 定义和用法 transition-timing-function 属性规定过渡效果的速度曲线. 该属性允许过渡效果随着时间来改变其 ...

  3. jsonp调用webapi和mvc

    webapi代码如下: public string Get(int id) { var callback = HttpContext.Current.Request["callback&qu ...

  4. 嵌入式linux无线网卡的使用

    from:http://blog.csdn.net/sparksalmon/article/details/8445287 嵌入式linux无线网卡的使用 最近一直在开发机顶盒上的无线功能,把这一段的 ...

  5. javascript 节点的增,删,改,查

    1.创建节点  A.创建元素节点    document.createElement("元素标签名");   B.创建属性节点    document.createAttribut ...

  6. 如何使用KMS激活win10和office

    首先你需要下载一个kms软件,地址: https://yunpan.cn/cRxVNy2LRXjBt (提取码:d5d8) 然后搭建kms服务器,很简单.启动软件,选择“附加”Tab, 点连接到服务器 ...

  7. javascript进阶——测试和打包分发

    建立一个面向对象的好的代码基础后,为了达到代码重用的目的,通过调试使用适当的测试用例进行测试尤为必要,之后就是打包分发的主题. 一.调试与测试 1.调试 Firebug:包含了错误控制台.调试器.DO ...

  8. MySQL簇-cluster

    http://www.php100.com/manual/MySQL/ndbcluster.html 先做个标记吧.

  9. ConfigParser---python

    # !/usr/bin/python # Filename:tcfg.py import ConfigParser config = ConfigParser.ConfigParser() confi ...

  10. 每天学点管理学知识——情绪ABC理论

    什么是ABC理论 ABC理论(ABC Theory of Emotion)是由美国心理学家埃利斯创建的.就是认为激发事件A(activating event 的第一个英文字母)只是引发情绪和行为后果C ...