Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import sys
- ALPH = ["a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z", "/", ":", ".", "0", "1", "2", "3", "4", "5", "6", "7", "8", "9"]
- def check(start):
- n = start
- while n + 1 < len(s) and s[n + 1] != " ":
- a = s[n + 1]
- if s[n + 1] in ALPH:
- n += 1
- else:
- return -1
- if n - start > 6:
- return n + 1 #not include
- else:
- return -1
- l = int(input())
- a = []
- b = []
- f = []
- s = input()
- if len(s) <= l:
- print(s)
- print(0)
- sys.exit()
- n = s.count("http://")
- start = s.find("http://")
- f.append(start)
- finish = check(start)
- if finish != -1:
- a.append(start)
- b.append(finish)
- for i in range(1, n):
- start = s.find("http://", f[-1] + 1, len(s))
- f.append(start)
- finish = check(start)
- if finish != -1:
- a.append(start)
- b.append(finish)
- n = len(a)
- delta_len = 0
- for i in range(n):
- delta_len += b[i] - a[i] - 3
- z = len(s)
- x = delta_len
- y = len(s) - l
- delta = min(delta_len, len(s) - l)
- ans = max(0, y - x)
- s_len = len(s)
- s_ans = s[:a[0]]
- p = 0
- while delta > 0:
- if delta > b[p] - a[p] - 3:
- s_ans += "..." + s[b[p]:a[p + 1]]
- delta -= b[p] - a[p] - 3
- elif delta < b[p] - a[p] - 3:
- s_ans += s[a[p]:b[p] - delta - 3]
- s_ans += "..."
- s_ans += s[b[p]:]
- delta = 0
- else:
- s_ans += "..." + s[b[p]:]
- delta = 0
- p += 1
- print(s_ans)
- print(ans)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement