1518: 星星点点

时间限制(普通/Java):1000MS/10000MS     内存限制:65536KByte

描述

输入一个由“*”和“.”组成的字符串,然后根据规则生成下一行字符串: 
如果该行的第i和第i+1个位置上的符号不同,则下一行的第i个位置上为“*”,否则为“.”,其最后一个位置的字符由上一行的第一个和最后一个字符决定。反复应用上述规则足够多次后,某行的字符排列可能在以后的行中再次出现,或者不会再次出现。找出最近的相同的两行之间相差的行数。

输入

上述字符串,长度2<=L<=30。

输出

相差的行数(即行号相减)。

样例输入

.*.
***.

样例输出

3
1

题目来源

ZJGSU

题目链接:tzcoder.cn/acmhome/problemdetail.do?&method=showdetail&id=1518

模拟题,按照题目意思模拟,将每一个出现的字符串存入map中,判断是否出现重复的,但用字符串模拟会TLE,题目中只有两种字符,所以转换成二进制进行模拟,根据题目要求提取出转换式子y=(((y&1)<<(n-1))|(y>>1))^y;。

#include <string>
#include <cstdio>
#include <iostream>
#include <vector>
#include <map>
#include <algorithm>
using namespace std;
int main()
{ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);string s;map<int,int>m;while(cin>>s){int k=0,n=s.length(),y=0;for(int i=0;i<n;i++){if(s[i]=='*')y|=(1<<i);}//cout<<y<<" ";m.clear();while(1){k++;if(m[y])break;m[y]=k;y=(((y&1)<<(n-1))|(y>>1))^y;//cout<<y<<endl;}//mp[s]=k-m[s];cout<<k-m[y]<<endl;}
}

转载于:https://www.cnblogs.com/Anidlebrain/p/10028978.html

TZOJ--1518: 星星点点 (二进制模拟)相关推荐

  1. 1212: 核电站问题动态规划等多种方法(以及二进制模拟)

    文章目录 问题 小白的代码 二进制模拟 大佬的码 思路分析 代码实现 另一份代码 分析 大佬代码又又又来了 问题 1212: 核电站问题 时间限制: 1 Sec 内存限制: 128 MB 提交: 72 ...

  2. TZOJ 4621 Grammar(STL模拟)

    描述 Our strings only contain letters(maybe the string contains nothing). Now we define the production ...

  3. hdu与poj题目分类

    POJ 初期: 一.基本算法: (1)枚举. (poj1753,poj2965) (2)贪心(poj1328,poj2109,poj2586) (3)递归和分治法. (4)递推. (5)构造法.(po ...

  4. 杭电oj题目题型分类(转)

    1001 整数求和 水题 1002 C语言实验题--两个数比较 水题 1003 1.2.3.4.5... 简单题 1004 渊子赛马 排序+贪心的方法归并 1005 Hero In Maze 广度搜索 ...

  5. HDOJ题目分类大全

    版权声明:本文为博主原创文章,欢迎转载,转载请注明本文链接! https://blog.csdn.net/qq_38238041/article/details/78178043 杭电里面有很多题目, ...

  6. HDU题目分类大全【大集合】

    基础题: 1000.1001.1004.1005.1008.1012.1013.1014.1017.1019.1021.1028.1029.  1032.1037.1040.1048.1056.105 ...

  7. 杭电OJ题目分类(转载)

    1001 整数求和 水题 1002 C语言实验题--两个数比较 水题 1003 1.2.3.4.5... 简单题 1004 渊子赛马 排序+贪心的方法归并 1005 Hero In Maze 广度搜索 ...

  8. hdoj杭电问题分类

    杭电上的题虽然多,但是一直苦于找不到问题分类,网页都是英文的,所以平时做题也没怎么看,今天仔细一看,问题分类竟然就在主页....做了那么久的题居然没发现,表示已经狗带..不要笑,不知道有没有像我一样傻 ...

  9. 转载:Hdu 题目分类

    原址点击 基础题:1000.1001.1004.1005.1008.1012.1013.1014.1017.1019.1021.1028.1029. 1032.1037.1040.1048.1056. ...

最新文章

  1. LVM-HOWTO/学习笔记(二)
  2. 推荐百度地图的新功能--“三维”
  3. 微型激光投影廉价版本
  4. DevOps笔记-05:IT行业中BA、SM、PO、PM、PD、Dev、Ops、QA都是什么角色
  5. swift 基础学习之属性修饰符
  6. Device is not certified by Google
  7. vsftp 配置参数详解
  8. CAT8八类网线标准、测试与应用
  9. 《Redis入门指南(第 2 版)》读后感
  10. cmd命令行激活win7
  11. Bloodsucker ZOJ-3551 期望DP
  12. pdf文件如何在安卓手机端不用下载在线预览
  13. Tuxera NTFS2023免费版Mac电脑系统读写软件
  14. 干货 : 揭秘信息可视化图表的设计方法
  15. 学习OpenCV——Kalman滤波
  16. java 有指针吗_java中到底有没有指针(转)
  17. cmd命令行切换目录路径
  18. 四门轿跑 标致发布Exalt概念车设计图
  19. Python爬虫+BI分析,做一份酷炫的A股牛市可视化!
  20. Bumblebee之负载、限流和故障处理实践

热门文章

  1. 1216: 斐波那契数列
  2. as3调用外部swf里的类的方法
  3. CentOS新增用户并授予sudo权限
  4. 如约而至 Nexus 6 的 Android 7.1.1 已经上线
  5. (转)浏览器兼容的JS写法总结
  6. 属性动画基础之ValueAnimator
  7. C#中几种数据库的大数据批量插入
  8. Servlet与JSP间的传值问题
  9. 利用HTML中的XML数据岛记录浏览
  10. 无论是cisco还是华三的书上对于子网划分有个问题需要解释