Tyche 2317 Color
题目大意:有三个人alice,bob,yazid,三种颜色red,blue,green,每个人对应一种颜色。
[name] is [color].
Yazid会做以下操作:
1 将三个句子连在一起
2 去掉逗号和空格
3 全部转换为小写
Alice,Bob会在串中加入任意小写字母。
现给定最后的串,求开始的串。
答案可能有多种,输出字典序最小的一种。
思路:一开始以为很复杂,一看就是一个搜索。
先找名字再找is最后找颜色,重复三次即可得到结果。
考试的时候把字典序理解错了,疯狂0分,换了个搜索顺序就ac了,血亏。
- #include<iostream>
- #include<cstring>
- #include<cstdio>
- using namespace std;
- int T,a[][];
- char ch[],name[][]={"alice","bob","yazid"},nm[][]={"Alice","Bob","Yazid"},color[][]={"blue","green","red"},pd[]={"is"};
- bool flag,b1[],b2[];
- int fnd(int s,char c)
- {
- int l=strlen(ch+);
- for(int i=s;i<=l;i++)
- if(ch[i]==c)
- return i;
- return -;
- }
- void dfs(int x,int k,int s,int e)
- {
- if(x==&&!flag)
- {
- flag=;
- for(int i=;i<=;i++)
- printf("%s %s %s.",nm[a[i][]],pd,color[a[i][]]);
- printf("\n");
- }
- if(k==)//??
- {
- for(int i=;i<=;i++)
- if(!b1[i])
- {
- bool flg=;
- int p=s;
- for(int j=;j<strlen(name[i]);j++)
- {
- p=fnd(p,name[i][j]);
- if(p==-)
- {
- flg=;
- break;
- }
- p++;
- }
- if(!flg)
- {
- b1[i]=;
- a[x][]=i;
- dfs(x,,p,e);
- b1[i]=;
- }
- }
- }
- else if(k==)
- {
- bool flg=;
- int p=s;
- for(int j=;j<;j++)
- {
- p=fnd(p,pd[j]);
- if(p==-)
- {
- flg=;
- break;
- }
- p++;
- }
- if(!flg)
- dfs(x,,p,e);
- }
- else
- {
- for(int i=;i<=;i++)
- if(!b2[i])
- {
- bool flg=;
- int p=s;
- for(int j=;j<strlen(color[i]);j++)
- {
- p=fnd(p,color[i][j]);
- if(p==-)
- {
- flg=;
- break;
- }
- p++;
- }
- if(!flg)
- {
- b2[i]=;
- a[x][]=i;
- dfs(x+,,p,e);
- b2[i]=;
- }
- }
- }
- }
- int main()
- {
- scanf("%d",&T);
- while(T--)
- {
- scanf("%s",ch+);
- flag=;
- dfs(,,,strlen(ch+));
- if(!flag)
- printf("No solution.\n");
- }
- return ;
- }
Tyche 2317 Color的更多相关文章
- 【转】c#、wpf 字符串,color,brush之间的转换
转自:http://www.cnblogs.com/wj-love/archive/2012/09/14/2685281.html 1,将#3C3C3C 赋给background this.selec ...
- HDOJ 2317. Nasty Hacks 模拟水题
Nasty Hacks Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Tota ...
- Python为8bit深度图像应用color map
图片中存在着色版的概念,二维矩阵的每个元素的值指定了一种颜色,因此可以显示出彩色. 迁移调色板 下述python代码将VOC数据集中的某个语义分割的图片的调色板直接应用在一个二维矩阵代表的图像上 #l ...
- (转)System.Drawing.Color的颜色对照表
经常使用System.Drawing.Color, 本篇介绍一下颜色与名称及RGB值的对应关系. 1. 颜色与名称的对照表(点击下图放大看): 2. 颜色与RGB值对照表: Color.AliceBl ...
- 激光打印机的Color/paper, Xerography介绍
Color Basic 看见色彩三要素: 光源,物体,视觉 加色色彩模型:R,G,B 多用于显示器 减色色彩模型:C,M,Y,K 多用于打印复印 Paper 东亚地区常用A系列标准用纸,在多功能一体机 ...
- 安卓工具箱:color of Style
<?xml version="1.0" encoding="utf-8"?> <resources> <color name=&q ...
- UITableView 一直显示滚动条(ScrollBar Indicators)、滚动条Width(宽度)、滚动条Color(颜色)
在 IOS 中,对 UIScrollView 的滚动条(ScrollBar Indicators)的自定义设置接口,一直都是很少的.除了能自定义简单的样式(UIScrollViewIndicatorS ...
- OpenCASCADE Color Scale
OpenCASCADE Color Scale eryar@163.com Abstract. The color scale is a specialized label object that d ...
- Color Transfer between Images code实现
上计算机视觉课老师布置的作业实现论文:Color Transfer between Images 基本思路是: 1.给定srcImg和targetImg 2.将RGB空间转为Lab空间 3.根据论文中 ...
随机推荐
- iOS开发之CoreImage
CoreImage是iOS中的一个图像处理框架,提供了强大高效的图像处理功能,可以通过调用简单的API来使用框架所带的各种滤镜对图像进行处理. CoreImgae的三个重要组成部分:1.CIFiter ...
- maven下载及安装
一.下载及安装 1.1 下载maven 3.1.1 先到官网http://maven.apache.org/download.cgi 下载最新版本(目前是3.1.1 ),下载完成后,解压到某个目录,本 ...
- 微信小程序大型系统架构中应用Redis缓存要点
在大型分布式系统架构中,必须选择适合的缓存技术以应对高并发,实现系统相应的高性能,酷客多小程序经过慎重选型,选择了采用基于腾讯云服务的Redis弹性缓存技术,结合Redis官方推荐的.NET驱动类库S ...
- 【C#复习总结】细说 Lambda表达式
1 前言 本系列会将[委托] [匿名方法][Lambda表达式] [泛型委托] [表达式树] [事件]等基础知识总结一下.(本人小白一枚,有错误的地方希望大佬指正) 系类1:细说委托 系类2:细说匿名 ...
- 八、xadmin自定义菜单栏顺序
xadmin默认是读取注册的app和所有注册到xadmin的mode来生成对应的菜单. nav_menu[app_key] = { 'title': app_title, 'menus': [mode ...
- OO最后一次作业
终于开始最后一次作业了,是时候为这学期oo画一个圆满的局句号了. 回首这学期的OO经历,一路走来,经过了开始对面向对象的初步接触,然后就是充满痛苦回忆的多线程,接下来到了令人焦头烂额的规格设计,最后是 ...
- bug总结
1.被除数为0 2.Java 空指针异常(java.lang.NullPointerException) 即对象没有进行实例化便进行了使用.实例化的意义,就是将对象实例的地址赋值给对象符号. 比如 S ...
- socket流程
- P66 整环的零元
R/I=0的零因子是0+I吗? 如果不是,那请问R/I的零因子是什么呢? R/I没有零因子 R/I的零元 是I中的元素定义的等价类 么 a是理想I的元素,自然也是R的元素
- [转帖]BRD、MRD 和 PRD
来源: https://www.zhihu.com/question/19655491 BRD 商业需求文档 Business Requirement Document MRD 市场需求文档 Mark ...