算法二十

音乐许可

算法描述

  • 在线音乐服务通常都有许可,一个许可通常授权给3台计算机,授权给计算机A的许可,计算机A可以将该许可转让给B,但不可以转让回头。
  • 作为在线音乐的后台服务提供者,你必须记录许可转让日志log
  • 例如,“ABCDABC”是一条转让日志,每个大写字母代表一台电脑
  • 算法要求找到非法授权许可
  • 例如,“ABCDABC”这条日志,A、B、C三台可以认为正常许可,D可以认为是ABC中的某一台转让的许可,之后AB也可认为是正常的许可,但出现C时,可以判断C为非法许可。算法要求找出这里的C

参数定义

  • 类名 MusicLicenses
  • 方法 audit
  • 输入参数 string
  • 输出 int
  • 方法声明 int audit(string log)

限制条件

  • log包含[1, 50]个元素

例子

  • 输入
    • log:”ABCBAD”
  • 输出
    • -1

测试实例

  • 实例一

    • 输入

      • ”ABCDABCD”
    • 输出

      • 6
  • 实例二

    • 输入
      • ”X”
    • 输出
      • -1
  • 实例三

    • 输入
      • ”ABCDEFGHIJKLMNOPQRSTUVWXYZ”
    • 输出
      • -1
  • 实例四

    • 输入
      • ”AVERYUNUSUALACCESSPATTERNINDEED”
    • 输出
      • 15
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值