Форум программистов, компьютерный форум, киберфорум
Python
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.56/25: Рейтинг темы: голосов - 25, средняя оценка - 4.56
20 / 21 / 6
Регистрация: 30.06.2015
Сообщений: 431
1

1001. Обратный корень

04.03.2016, 22:20. Показов 4718. Ответов 4
Метки нет (Все метки)

Задача отсюда http://acm.timus.ru/problem.aspx?space=1&num=1001
Кстати, на самом сайте есть 2 решения этой же задачи, это здесь http://acm.timus.ru/help.aspx?... &locale=ru
но так как я новичок, то я не сильно понимаю в таком коротком коде, поэтому я решил попробовать написать решение своими силами и методами, мое решение вот
Python
1
2
3
4
5
6
import math
s = input()
arr = s.split()
for x in reversed(arr):
    a = math.sqrt(float(x))
    print("%.4f" % ((a)))
Решение задача не принимает, я даже догадываюсь почему, видимо из-за фразы "переводов строк"...помогите оптимизировать мой код, чтобы я разобрался в решении этой задачи.Спасибо.
0

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
04.03.2016, 22:20
Ответы с готовыми решениями:

1001. Обратный корень
Собственно задача. Не могу сообразить, как правильно читать поток, подскажите пожалуйста ...

Обратный корень
Исходные данные Входной поток содержит набор целых чисел Ai (0 ≤ Ai ≤ 1018),...

Обратный корень
Исходные данные Входной поток содержит набор целых чисел Ai (0 ≤ Ai ≤ 1018),...

Обратный корень
Добрый вечер, господа! Давно интересует данная задача, можете помочь решить? Я не понимаю как...

4
Эксперт по компьютерным сетям
4826 / 2724 / 833
Регистрация: 03.11.2009
Сообщений: 8,398
Записей в блоге: 3
04.03.2016, 22:29 2
Python
1
2
3
4
>>> a = ''' 1427  0
...
...    876652098643267843
... 5276538'''
Python
1
print(*(['{0:.4f}'.format(int(x)**0.5) for x in a.split()[::-1]]), sep='\n')
Добавлено через 1 минуту
Код
2297.0716
936297014.1164
0.0000
37.7757
0
20 / 21 / 6
Регистрация: 30.06.2015
Сообщений: 431
05.03.2016, 00:24  [ТС] 3
Python
1
2
a = input()
print(*(['{0:.4f}'.format(int(x)**0.5) for x in a.split()[::-1]]), sep='\n')
Так вы имеете ввиду? если да, ответ неверен. если бы вы мне могли бы объяснить, какой метод сможет обработать и перевод строк, как понимаю сплит с этим не справится, был бы благодарен, в общем хочу свой код оптимизировать, потому что знаю, что и зачем, до вашего уровня, пока, не дошел, поэтому решения в 1 строчку для меня не понятны, с уважением.
0
Эксперт по компьютерным сетям
4826 / 2724 / 833
Регистрация: 03.11.2009
Сообщений: 8,398
Записей в блоге: 3
05.03.2016, 00:47 4
Лучший ответ Сообщение было отмечено izuchaju_python как решение

Решение

Python
1
2
3
4
5
6
7
8
import sys
 
arr = []
for line in sys.stdin:
    arr.extend(line.split())
 
for x in arr[::-1]:
    print('{0:.4f}'.format(int(x)**0.5))
1
169 / 90 / 71
Регистрация: 10.05.2014
Сообщений: 432
07.03.2016, 19:59 5
izuchaju_python,
Python
1
2
3
4
import sys,math
a = []
[a.extend(i.split()) for i in sys.stdin]#Считывает данные и записывает в массив, до перевода строки. Далее заполняется другой массив, пока не встретится еще один перевод строки, или пока не закончатся данные, и все полученные массивы объединяются в 1 массив
print(*(str(int(x)**0.5) for x in a[::-1]),sep='\n')
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
07.03.2016, 19:59

Обратный корень
Объясните пожалуйста , что такое потоки на примере этой задачи: ...

Обратный корень
Пожалуйста, помогите решить задачу, не получается уже месяц (если решать с массивами, то нужно...

Вычислить обратный корень числа
Исходные данные: Входной поток содержит набор целых чисел Ai (0 ≤ Ai ≤ 1018),...

Вычислить обратный корень нескольких чисел
Исходные данные Входной поток содержит набор целых чисел Ai (0 ≤ Ai ≤ 10^18),...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.