在Python中找到回文的时间并且在给定时间之后

假设我们有一个字符串s,它以HH:MM表示24小时格式的时间,因此HH的范围是0到23,MM的范围是0到59,我们必须找到下一个最接近的时间是字符串形式的回文。如果没有这样的字符串,则返回-1。

因此,如果输入类似于“ 22:22”,那么输出将为“ 23:32”。

为了解决这个问题,我们将遵循以下步骤-

  • n:= s的大小

  • hour_string:= s的子字符串[从索引0到2]

  • 分钟:= s的子字符串[从索引3到5]并将其转换为整数

  • rev_hour:=反转hour_string并将其转换为数字

  • rev_hr_str:=倒转hour_string

  • h:= hour_string作为整数

  • temp:=空字符串,res:=空字符串

  • 如果h为23且分钟> = 32,则

    • res:= -1

  • 否则,当分钟<rev_hour时,则

    • res:= res串联temp串联“:”串联rev_hr_str

    • res:= res串联temp串联“:0”串联rev_hr_str

    • temp:=“ 0”

    • 如果h <10,则

    • temp:= temp并置h

    • 如果rev_hour <10,则

    • 除此以外,

    • 除此以外,

      • res:= res串联temp串联“:”串联rev_hr_str

      • res:= res串联temp串联“:0”串联rev_hr_str

      • temp:=“ 0”

      • h:= h + 1

      • rev_hr_str:=反转h作为字符串

      • rev_hour:=反转h

      • 如果h <10,则

      • temp:= temp并置h

      • 如果rev_hour <10,则

      • 除此以外,

      • 返回资源

      示例

      让我们看下面的实现以更好地理解-

      def get_next_palindrome_time(s) :

         n = len(s)

         hour_string = s[0 : 2]

         minute = int(s[3 : 5])

         rev_hour = int(hour_string[::-1])

         rev_hr_str = hour_string[::-1]

         h = int(hour_string)

         temp = ""

         res = ""

         if (h == 23 and minute >= 32) :

            res = "-1"

         elif (minute < rev_hour) :

            if (h < 10) :

               temp = "0"

            temp = temp + str(h)

            if (rev_hour < 10) :

               res = res + temp + ":0" + rev_hr_str

            else :

               res = res + temp + ":" + rev_hr_str

         else :

            h += 1

            rev_hr_str = str(h)[::-1]

            rev_hour = int(rev_hr_str)

            if (h < 10) :

               temp = "0"

            temp = temp + str(h)

            if (rev_hour < 10) :

               res = res + temp + ":0" + rev_hr_str

            else :

               res = res + temp + ":" + rev_hr_str

      return res

      s = "22:22"

      print(get_next_palindrome_time(s))

      输入值

      "22:22"

      输出结果

      23:32

      以上是 在Python中找到回文的时间并且在给定时间之后 的全部内容, 来源链接: utcz.com/z/362202.html

      回到顶部