L1-058 6翻了 (15 分)
摘要
Title: L1-058 6翻了 (15 分)
Tag: 双指针
Memory Limit: 64 MB
Time Limit: 1000 ms
Powered by:NEFU AB-IN
L1-058 6翻了 (15 分)
-
题意
“666”是一种网络用语,大概是表示某人很厉害、我们很佩服的意思。最近又衍生出另一个数字“9”,意思是“6翻了”,实在太厉害的意思。如果你以为这就是厉害的最高境界,那就错啦 —— 目前的最高境界是数字“27”,因为这是 3 个 “9”!
本题就请你编写程序,将那些过时的、只会用一连串“6666……6”表达仰慕的句子,翻译成最新的高级表达。 -
思路
双指针
以i为左端点,j为右端点,是6就往右跑,判断两者之差,并做替换即可 -
代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21'''
Author: NEFU AB-IN
Date: 2022-04-16 21:45:20
FilePath: \ACM\GPLT\L1-058.PY
LastEditTime: 2022-04-16 21:49:01
'''
s = list(input())
i = 0
while i < len(s):
if s[i] != '6':
i += 1
continue
j = i
while j < len(s) and s[j] == '6':
j += 1
if j - i > 9:
s[i:j] = ['27']
elif j - i > 3:
s[i:j] = ['9']
i += 1
print("".join(s))