Re: e-olymp #9543 Басейн
Та людина, випадково, я
Ви не увійшли. Будь ласка, увійдіть або зареєструйтесь.
Ласкаво просимо вас на україномовний форум з програмування, веб-дизайну, SEO та всього пов'язаного з інтернетом та комп'ютерами.
Будемо вдячні, якщо ви поділитись посиланням на Replace.org.ua на інших ресурсах.
Для того щоб створювати теми та надсилати повідомлення вам потрібно Зареєструватись.
Український форум програмістів → Python → e-olymp #9543 Басейн
Для відправлення відповіді ви повинні увійти або зареєструватися
У мене теж лише 3 тести. Умова надто нечітка. Код із тестами, можна закоментувати непотрібне:
▼Прихований текст
І на завершення цієї задачі
Е-Оlymp надає можливість встановити опцію: Розв'язок використовує файли для читання та запису
В такому разі зручно тестувати програму використовуючі зовнішні файли
f = open('input.txt','r')
f1 = open('output.txt','w')
n=int(f.readline())
data = [f.readline().strip().upper() for _ in range(n)] # <- UPPER!
pairs = [line.split() for line in data] #generator
swimmers = {surname:float(time) for surname, time in pairs} #still generator
value = sorted(list(swimmers.values()))
name = f.readline().strip().upper() # <- UPPER!
try:
result=swimmers.get(name) #Пошук результату за імям плавця
mod=n%6
tail=value[n-3:n]
if mod in [1,2] and result in tail:#чи попадає плавець у "хвіст"
swim=n//6+1
walk=tail.index(result)+1
else:
number_swimmers=value.index(result)+1 # його номер
swim,walk=divmod(number_swimmers,6) #заплив та доріжка
if walk!=0: swim+=1
print('{} {}'.format(swim,'634251'[walk]),file=f1)
except ValueError:
print("Missing",file=f1)
f.close()
f1.close()
sys.stdin = open('input.txt','r')
sys.stdout = open('output.txt','w')
А далі звичайні input/print.
Для відправлення відповіді ви повинні увійти або зареєструватися