Школа программиста

Забыли пароль?
[задачи] [курсы] [олимпиады] [регистрация]
Логин:   Пароль:    
Скрыть меню
О школе
Правила
Олимпиады
Фотоальбом
Гостевая
Форум
Архив олимпиад
Архив задач
Состояние системы
Рейтинг
Курсы
Новичкам
Работа в системе
Алгоритмы
Курсы ККДП
Дистрибутивы
Ссылки

HotLog


 
Вернуться
Тема: Добрый день. Обращаюсь к админам: помогите. У меня похожие проблемы с двумя задачами : 20 (пилообразная последовательность) и 448 (простые гири). В первой - ввод за линию и пара ифов, во второй - решето эратосфена + один линейный пробег. Но оба решения получают ТЛ. В чём проблема?
1
  1  Андрей Матюшёнок, 11 марта 2018 г. 17:01:18
      Всем спасибо, добавил инклуд, обе таски уверенно зашли:)
Не ожидал, что подключение простой библиотеки ускорит работу чтения/записи более чем в два раза, особенно если учитывать, что без stdio я использовал printf/scanf, но всё равно получал TL.
  2  Меньшиков Фёдор Владимирович, 11 марта 2018 г. 15:57:47
      В строчке перед #include <bits/stdc++.h> напишите #include <stdio.h> - и всё заработает быстро. Только осторожно с ней на acmp: long long придётся читать и писать через %I64d (i большая), чтение/запись long double (%Lf) вроде не поддерживаются.
  3  Хворых Павел, 11 марта 2018 г. 15:42:34
      Андрей, добавьте в самое начало строчку
#include <stdio.h>
Именно этот инклуд, не cstdio! Именно в начало, до других инклудов!
Далее используйте printf и scanf.
  4  Андрей Матюшёнок, 11 марта 2018 г. 14:58:57
      Да, на кодфорсесе раньше тоже была такая проблема, поэтому про медленный cin/cout знаю, перед тем как писать сюда перепробовал и ios_base, и scanf/printf -> вердикт не поменялся.
Библиотеки подключаю bits/stdc++.h - читал, что они подключают все (ну, очень многие) существующие.
Последняя посылка - 8025814. TL 11 тест.
P.S. при тестировании на серваках CF показал результат 0.093 время, 1,9 МБ память на тесте N = 500000.
  5  Беляев Сергей Николаевич, 11 марта 2018 г. 13:05:36
      Полагаю, что проблема в медленном чтении / выводе данных. Если пишите на С++, то используйте ios_base::sync_with_stdio(0); cin.tie(0); а еще лучше scanf / printf с подключением библиотеки stdio.h в самом начале.
1

Чтобы оставить сообщение необходимо зарегистрироваться и авторизоваться!

Красноярский краевой Дворец пионеров, (c)2006 - 2018, ICQ: 151483, E-mail: admin@acmp.ru