Домашни > Man who speaks the ends of words > Решения > Решението на Нелина Тотева

Резултати
10 точки от тестове
0 точки от учител

10 точки общо

12 успешни теста
0 неуспешни теста
Код

 1def beginning(word):
 2    size = len(word)
 3    remainder = size % 3
 4
 5    if size == 0:
 6        return ''
 7    elif remainder == 2:
 8        index = int(size / 3) + 1
 9    else:
10        index = int(size / 3) 
11
12    return word[:index]
13    
14def middle(word):
15    size = len(word)
16    remainder = size % 3
17
18    if size == 1:
19       return word[0]
20    elif size == 2:
21       return ''
22    elif remainder in (0 , 1):
23       index = int(size / 3)
24       return word[index : size - index]
25    else:
26       index = int(size / 3)
27       return word[index + 1 : size - index - 1]
28
29def end(word):
30    size = len(word)
31    remainder = size % 3
32
33    if size <= 1:
34        return ''
35    elif remainder == 2:
36        index = int(size / 3) + 1
37    else:
38        index = int(size / 3) 
39
40    return word[size - index :]       
41
42def split_sentence(sentence):
43    words_list = sentence.split()
44    result_list=[]
45
46    for i in words_list:
47        result_list.append((beginning(i), middle(i), end(i)))
48        
49    return result_list
50
51# some test cases I checked:
52
53# print(beginning("nelina"), middle("nelina"), end("nelina"))
54# print( beginning("Пица"), middle("Пица"), end("пица"))
55# print(beginning("барабани"), middle("барабани"), end("барабани"))
56# print(beginning("Враца"), middle("Враца"),end("Враца"))
57# print(beginning("123456654321"), middle("1234567654321"), end("1234567654321"))
58# print(beginning("домашно"), middle("домашно"), end("домашно"))
59# print(beginning("aheloy"), middle("aheloy"), end("aheloy"))
60# print(beginning("шах"), middle("шах"), end("шах"))
61# print(beginning("пайтън"), middle("пайтън"), end("пайтън"))
62# print(beginning("pa"), middle("pa"), end("pa"))
63# print(beginning("p"), middle("p"), end("p"))
64# print(beginning(""), middle(""), end(""))
65# print(beginning("pa/ra"), middle("pa/ra"), end("pa/ra"))
66
67# print(split_sentence('Kазвам се Джон Сноу'))
68# print(split_sentence('аз купих домати и краставици от магазина'))
69# print(split_sentence('О'))
70# print(split_sentence('Ок'))

............
----------------------------------------------------------------------
Ran 12 tests in 0.000s

OK

Дискусия
История

f1def beginning(word):f1def beginning(word):
2    size = len(word)2    size = len(word)
n3    remainder = int(size % 3)n3    remainder = size % 3
44
5    if size == 0:5    if size == 0:
6        return ''6        return ''
7    elif remainder == 2:7    elif remainder == 2:
8        index = int(size / 3) + 18        index = int(size / 3) + 1
9    else:9    else:
10        index = int(size / 3) 10        index = int(size / 3) 
1111
12    return word[:index]12    return word[:index]
13    13    
14def middle(word):14def middle(word):
15    size = len(word)15    size = len(word)
n16    remainder = int(size % 3)n16    remainder = size % 3
1717
18    if size == 1:18    if size == 1:
19       return word[0]19       return word[0]
20    elif size == 2:20    elif size == 2:
21       return ''21       return ''
n22    elif remainder == 1:n22    elif remainder in (0 , 1):
23       index = int(size / 3)23       index = int(size / 3)
n24    elif remainder == 0:n24       return word[index : size - index]
25       index = int(size / 3)
26    else:25    else:
27       index = int(size / 3)26       index = int(size / 3)
28       return word[index + 1 : size - index - 1]27       return word[index + 1 : size - index - 1]
n29    n
30    return word[index : size - index]
3128
32def end(word):29def end(word):
33    size = len(word)30    size = len(word)
n34    remainder = int(size % 3)n31    remainder = size % 3
3532
36    if size <= 1:33    if size <= 1:
37        return ''34        return ''
38    elif remainder == 2:35    elif remainder == 2:
39        index = int(size / 3) + 136        index = int(size / 3) + 1
40    else:37    else:
41        index = int(size / 3) 38        index = int(size / 3) 
4239
43    return word[size - index :]       40    return word[size - index :]       
4441
45def split_sentence(sentence):42def split_sentence(sentence):
46    words_list = sentence.split()43    words_list = sentence.split()
47    result_list=[]44    result_list=[]
tt45 
48    for i in words_list:46    for i in words_list:
49        result_list.append((beginning(i), middle(i), end(i)))47        result_list.append((beginning(i), middle(i), end(i)))
50        48        
51    return result_list49    return result_list
5250
53# some test cases I checked:51# some test cases I checked:
5452
55# print(beginning("nelina"), middle("nelina"), end("nelina"))53# print(beginning("nelina"), middle("nelina"), end("nelina"))
56# print( beginning("Пица"), middle("Пица"), end("пица"))54# print( beginning("Пица"), middle("Пица"), end("пица"))
57# print(beginning("барабани"), middle("барабани"), end("барабани"))55# print(beginning("барабани"), middle("барабани"), end("барабани"))
58# print(beginning("Враца"), middle("Враца"),end("Враца"))56# print(beginning("Враца"), middle("Враца"),end("Враца"))
59# print(beginning("123456654321"), middle("1234567654321"), end("1234567654321"))57# print(beginning("123456654321"), middle("1234567654321"), end("1234567654321"))
60# print(beginning("домашно"), middle("домашно"), end("домашно"))58# print(beginning("домашно"), middle("домашно"), end("домашно"))
61# print(beginning("aheloy"), middle("aheloy"), end("aheloy"))59# print(beginning("aheloy"), middle("aheloy"), end("aheloy"))
62# print(beginning("шах"), middle("шах"), end("шах"))60# print(beginning("шах"), middle("шах"), end("шах"))
63# print(beginning("пайтън"), middle("пайтън"), end("пайтън"))61# print(beginning("пайтън"), middle("пайтън"), end("пайтън"))
64# print(beginning("pa"), middle("pa"), end("pa"))62# print(beginning("pa"), middle("pa"), end("pa"))
65# print(beginning("p"), middle("p"), end("p"))63# print(beginning("p"), middle("p"), end("p"))
66# print(beginning(""), middle(""), end(""))64# print(beginning(""), middle(""), end(""))
67# print(beginning("pa/ra"), middle("pa/ra"), end("pa/ra"))65# print(beginning("pa/ra"), middle("pa/ra"), end("pa/ra"))
6866
69# print(split_sentence('Kазвам се Джон Сноу'))67# print(split_sentence('Kазвам се Джон Сноу'))
70# print(split_sentence('аз купих домати и краставици от магазина'))68# print(split_sentence('аз купих домати и краставици от магазина'))
71# print(split_sentence('О'))69# print(split_sentence('О'))
72# print(split_sentence('Ок'))70# print(split_sentence('Ок'))
Legends
Colors
 Added 
Changed
Deleted
Links
(f)irst change
(n)ext change
(t)op