Решение на doge от Константин Тодоров

Обратно към всички решения

Към профила на Константин Тодоров

Резултати

  • 10 точки от тестове
  • 0 бонус точки
  • 10 точки общо
  • 15 успешни тест(а)
  • 0 неуспешни тест(а)

Код

def wow_such_much(start, end):
digits = list(range(start, end))
counter = 0
for num in digits:
if num % 3 == 0 and num % 5 == 0:
digits[counter] = 'suchmuch'
elif num % 3 == 0:
digits[counter] = 'such'
elif num % 5 == 0:
digits[counter] = 'much'
else:
digits[counter] = str(digits[counter])
counter += 1
return digits
def count_doge_words(input_strig):
doge_count = 0
doge_words = ['wow', 'lol', 'much', 'such', 'so', 'very']
input_strig_words = input_strig.split()
for word in input_strig_words:
if word in doge_words:
doge_count += 1
return doge_count

Лог от изпълнението

...............
----------------------------------------------------------------------
Ran 15 tests in 0.007s

OK

История (4 версии и 1 коментар)

Константин обнови решението на 06.03.2014 13:08 (преди около 10 години)

+def wow_such_much(start, end):
+ digits = list(range(start, end))
+
+ i = 0
+ for j in digits :
+ if j%3 == 0 :
+ digits[i] = 'such'
+ if j%5 == 0 :
+ digits[i] = 'much'
+ if j%3 == 0 and j % 5 == 0 :
+ digits[i] = 'suchmuch'
+ if j % 3 != 0 and j % 5 != 0 :
+ digits[i] = str(digits[i])
+ i += 1
+
+ return digits
+
+
+def count_doge_words(niz) :
+ doge_cnt = 0
+ start_cnt = 0
+ end_cnt = 0
+ for cur_char in niz :
+
+ if cur_char == ' ' :
+ cur_word = niz[start_cnt:end_cnt]
+
+ if(cur_word == 'wow' or cur_word == 'much' or cur_word == 'so'
+ or cur_word == 'such' or cur_word == 'lol'
+ or cur_word == 'very') :
+ doge_cnt += 1
+
+ end_cnt += 1
+ start_cnt = end_cnt
+
+ else :
+ end_cnt += 1
+
+ cur_word = niz[start_cnt:end_cnt]
+ if(cur_word == 'wow' or cur_word == 'much' or cur_word == 'so'
+ or cur_word == 'such' or cur_word == 'lol'
+ or cur_word == 'very') :
+ doge_cnt += 1
+
+ return doge_cnt

До тук нямаме изпратено решение с по-отвратителен стил от твоето:

  • Не използваш 4 интервала за отстъп
  • Имаш абсурдни имена на променливите (сериозно: niz!?)
  • Имаш скоби около условията на if-овете
  • Правиш една и съща абсурдна проверка на две места

Дори всички тестове на това решение да минат, няма да получиш положителен брой точки :)

Константин обнови решението на 06.03.2014 13:57 (преди около 10 години)

def wow_such_much(start, end):
- digits = list(range(start, end))
-
- i = 0
- for j in digits :
- if j%3 == 0 :
- digits[i] = 'such'
- if j%5 == 0 :
- digits[i] = 'much'
- if j%3 == 0 and j % 5 == 0 :
- digits[i] = 'suchmuch'
- if j % 3 != 0 and j % 5 != 0 :
- digits[i] = str(digits[i])
- i += 1
+ digits = list(range(start, end))
+
+ i = 0
+ for j in digits :
+ if j % 3 == 0 and j % 5 == 0 :
+ digits[i] = 'suchmuch'
+ elif j % 3 == 0 :
+ digits[i] = 'such'
+ elif j % 5 == 0 :
+ digits[i] = 'much'
+ else :
+ digits[i] = str(digits[i])
+ i += 1
- return digits
+ return digits
-def count_doge_words(niz) :
- doge_cnt = 0
- start_cnt = 0
- end_cnt = 0
- for cur_char in niz :
-
- if cur_char == ' ' :
- cur_word = niz[start_cnt:end_cnt]
+def count_doge_words(input_strig) :
+ doge_cnt = 0
+ start_cnt = 0
+ end_cnt = 0
+ doge_words = ['wow','lol','much','such','so','very']
+ for cur_char in input_strig :
+
+ if cur_char == ' ' :
+ cur_word = input_strig[start_cnt:end_cnt]
- if(cur_word == 'wow' or cur_word == 'much' or cur_word == 'so'
- or cur_word == 'such' or cur_word == 'lol'
- or cur_word == 'very') :
- doge_cnt += 1
+ if cur_word in doge_words :
+ doge_cnt += 1
- end_cnt += 1
- start_cnt = end_cnt
+ end_cnt += 1
+ start_cnt = end_cnt
- else :
- end_cnt += 1
+ else :
+ end_cnt += 1
- cur_word = niz[start_cnt:end_cnt]
- if(cur_word == 'wow' or cur_word == 'much' or cur_word == 'so'
- or cur_word == 'such' or cur_word == 'lol'
- or cur_word == 'very') :
- doge_cnt += 1
+ cur_word = input_strig[start_cnt:end_cnt]
+ if cur_word in doge_words :
+ doge_cnt += 1
- return doge_cnt
+ return doge_cnt

Константин обнови решението на 06.03.2014 19:31 (преди около 10 години)

-def wow_such_much(start, end):
+def wow_such_much(start, end) :
digits = list(range(start, end))
-
- i = 0
- for j in digits :
- if j % 3 == 0 and j % 5 == 0 :
- digits[i] = 'suchmuch'
- elif j % 3 == 0 :
- digits[i] = 'such'
- elif j % 5 == 0 :
- digits[i] = 'much'
+ cnt = 0
+ for num in digits :
+ if num % 3 == 0 and num % 5 == 0 :
+ digits[cnt] = 'suchmuch'
+ elif num % 3 == 0 :
+ digits[cnt] = 'such'
+ elif num % 5 == 0 :
+ digits[cnt] = 'much'
else :
- digits[i] = str(digits[i])
- i += 1
+ digits[cnt] = str(digits[cnt])
+ cnt += 1
return digits
def count_doge_words(input_strig) :
doge_cnt = 0
- start_cnt = 0
- end_cnt = 0
- doge_words = ['wow','lol','much','such','so','very']
- for cur_char in input_strig :
-
- if cur_char == ' ' :
- cur_word = input_strig[start_cnt:end_cnt]
+ doge_words = ['wow', 'lol', 'much', 'such', 'so', 'very']
+ input_strig_words = input_strig.split()
+
+ for word in input_strig_words :
+ if word in doge_words :
+ doge_cnt += 1
- if cur_word in doge_words :
- doge_cnt += 1
-
- end_cnt += 1
- start_cnt = end_cnt
-
- else :
- end_cnt += 1
-
- cur_word = input_strig[start_cnt:end_cnt]
- if cur_word in doge_words :
- doge_cnt += 1
-
return doge_cnt
+

Константин обнови решението на 10.03.2014 21:59 (преди около 10 години)

-def wow_such_much(start, end) :
+def wow_such_much(start, end):
digits = list(range(start, end))
- cnt = 0
- for num in digits :
- if num % 3 == 0 and num % 5 == 0 :
- digits[cnt] = 'suchmuch'
- elif num % 3 == 0 :
- digits[cnt] = 'such'
- elif num % 5 == 0 :
- digits[cnt] = 'much'
- else :
- digits[cnt] = str(digits[cnt])
- cnt += 1
-
+ counter = 0
+ for num in digits:
+ if num % 3 == 0 and num % 5 == 0:
+ digits[counter] = 'suchmuch'
+ elif num % 3 == 0:
+ digits[counter] = 'such'
+ elif num % 5 == 0:
+ digits[counter] = 'much'
+ else:
+ digits[counter] = str(digits[counter])
+ counter += 1
+
return digits
-def count_doge_words(input_strig) :
- doge_cnt = 0
+def count_doge_words(input_strig):
+ doge_count = 0
doge_words = ['wow', 'lol', 'much', 'such', 'so', 'very']
input_strig_words = input_strig.split()
- for word in input_strig_words :
- if word in doge_words :
- doge_cnt += 1
+ for word in input_strig_words:
+ if word in doge_words:
+ doge_count += 1
- return doge_cnt
-
+ return doge_count