zoukankan      html  css  js  c++  java
  • 5月31日阿里笔试

    1.走马灯

    !为坏灯

    相邻四个RGBY不重复

    输入s

    RGBY!!!

    输出 RGBY的个数

    1 1 1 0

    思路:遍历s,记录所有感叹号的位置存放起来,如果出现R则%5得到所有R的位置iR,同理得到GBY的位置iG,iB,iY

    然后访问感叹号的位置index,将index%5,如果与iG,iB,iY,iR相等,则将该位置++。(过了80)

    2.点灯关灯问题

    输入5 2 2

    表示5*5的格子内,灯全关

    2次开灯:根据坐标开横,竖,正斜,反斜可以用4个Set存储,已经打开的行,列,斜

    2次关灯:根据坐标先判断是否开着,开则res++,然后关掉当前灯及周围3*3的所有灯。

    暴力思路(没时间实现):每次关灯先判断是否开着,根据x,y,x-y,y-x是否存在于4个set中。如果开着,那么再往前找,是否与前面开的节点相邻。(暴力的时间复杂应该到n^2了),没想到用什么结构保存曾经关过的节点的四周。

  • 相关阅读:
    网络基础
    Linux安装Redis
    mongodb——文档操作
    mangodb——集合的操作
    Linux安装MongoDB
    2021-10-14软件设计师
    2021-10-13
    How do you use System.Drawing in .NET Core?
    C# 9.0 新特性
    Mysql存储引擎
  • 原文地址:https://www.cnblogs.com/wsZzz1997/p/14833173.html
Copyright © 2011-2022 走看看