Thứ Năm, 10 tháng 1, 2019

UVa 00353 - Pesky Pa;indromes (brute force all substring)

Link:https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&category=5&page=show_problem&problem=289
Sol:
import sys
while True:
line = sys.stdin.readline()
if line == '':
break
line = line.strip()
n = len(line)
totalUniqueSubstrings = 0
for i in range(1, n + 1):
unique = [True] * (n-i+1)
for j in range(0, n-i+1):
substring = line[j:j+i]
#this will check if the string is palindrom
if substring == substring[::-1]:
for k in range(0, j):
if line[k:k+i] == substring:
unique[j] = False
break
else:
unique[j] = False
totalUniqueSubstrings = totalUniqueSubstrings + unique.count(True)
print("The string '{}' contains {} palindromes.".format(line, totalUniqueSubstrings))

Không có nhận xét nào:

Đăng nhận xét

Bài G - Educatioal Round 62

Đề bài: Bạn được cho 1 đồ thị vô hướng đặc biệt. Nó bao gồm $2n$ đỉnh được đánh số từ 1 đến 2n. Dưới đây là một số đặc tính của đồ thị: + ...