13 / 13 / 9
Регистрация: 28.07.2017
Сообщений: 103
|
|||||||||||
1 | |||||||||||
Cin точнее scanf?29.03.2018, 23:39. Показов 612. Ответов 7
Метки нет Все метки)
(
Здравствуйте. Во время написания кода и попытки понимания возникновения ошибки, отправил на проход тестов два идентичных кода, отличия были только в том, что в одном случае для ввода перменных использовался ввод с помощью
std::cin , а в другом - scanf() . В итоге тест с std::cin прошел на 50%, а со scanf() - 45%. Скажите, пожалуйста, почему так происходит. Кстати, отличие в проходимых тестах тоже есть, т.е. со scanf() один тест прошел, а в std::cin оне не проходит.Тест для scanf() и Код: Кликните здесь для просмотра всего текста
Тест для cin и Код: Кликните здесь для просмотра всего текста
И вот сама задача если кому интересно.
0
|
|
29.03.2018, 23:39 | |
Ответы с готовыми решениями:
7
Операторы cin и scanf Из scanf в std::cin Переделаем вместе scanf() в cin>> Scanf vs cin (double variant) |
1392 / 1021 / 325
Регистрация: 28.07.2012
Сообщений: 2,810
|
|
29.03.2018, 23:52 | 2 |
Может ты просто по времени не проходишь? В базовом виде
cin работает медленнее, чем scanf .
0
|
223 / 213 / 80
Регистрация: 26.04.2013
Сообщений: 972
|
|
29.03.2018, 23:56 | 3 |
может проблема с форматным выводом? округление до копеек, т.е. только 2 знака после запятой
0
|
7 / 7 / 5
Регистрация: 25.03.2018
Сообщений: 377
|
|
30.03.2018, 00:16 | 4 |
Ещё есть такая фишка, что cin работает с потоком, а scanf с терминальной строкой
Добавлено через 2 минуты да и помню на одном сайте по прогр. была цитата :"Мораль: если входных данных много, то надо использовать scanf."
0
|
nonedark2008
|
30.03.2018, 00:34
#5
|
0
|
13 / 13 / 9
Регистрация: 28.07.2017
Сообщений: 103
|
|
30.03.2018, 19:00 [ТС] | 6 |
nonedark2008, Если говорить про отличия, то: при
scanf() 8-й тест проходит, в то время как у cin он не проходит. Но зато 14-й и 15-е тесты у cin проходят, а у scanf() на них неправильный ответ.Да, если использовать cin то по времени последний тест не проходит, т.к. слишком все долго. Но при scanf() этот тест во время вписывается, но ответ все-равно не правильный.Непонятно, почему если ввод разный, то и результаты разные. Смысл то один и тот же, мы присваиваем значение переменный. Типы у них одинаковые...
0
|
7538 / 6399 / 2918
Регистрация: 14.04.2014
Сообщений: 27,865
|
|
30.03.2018, 19:13 | 7 |
Где-то же предлагали sync_with_stdio(false) делать для ускорения cin.
1
|
1718 / 567 / 187
Регистрация: 12.03.2016
Сообщений: 2,169
|
|
30.03.2018, 19:39 | 8 |
Ошибка при решении задачи "Сумма максимума и минимума" - Time limit exceeded
Но такое предложение видел только на этом сайте (у них это в рекомендациях по решению задач написано). На другом может и не действовать, у каждого свои требования. Надо смотреть алгоритм.
1
|
30.03.2018, 19:39 | |
Помогаю со студенческими работами здесь
8
Заменить cin / cout на scanf / printf
Заменить cin cout на printf scanf Переделать scanf и printf в cin и cout Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |