Форум Всеукраїнської інтернет-олімпіади NetOI


На форумі обговорюються лише питання, пов'язані з олімпіадою

Ви не зайшли.

#1 2013-11-17 13:13:13

seland
Новий користувач
Зареєстрований: 2012-12-28
Повідомлень: 14

Специфікатори для printf

Добрий день! В зв'язку з набраними 18\20 балами по задачі Msum, вирішив поекспериментувати зі printf'ом. Виявилося, що однаковий код з виведенням в кінці printf("%I64d",result) не проходить передостанній тест, а з виведенням printf("%lld",result) - отримує АС. Чи це є особливості компілятора на перевіряючій системі, чи якийсь баг?

Поза форумом

 

#2 2013-11-18 12:35:34

Alex_Bulany
Новий користувач
Зареєстрований: 2009-01-26
Повідомлень: 17

Re: Специфікатори для printf

Тут дійсно є проблема в С, і в різних операційних системах вона вирішується по-різному.
Вона розібрана в лекціїї М.Густокашина на http://informatics.mccme.ru/moodle/file … lect1c.pdf
Він радить використовувати конструкцію:
#ifdef WIN32
printf("%I64d", n);
#else
printf("%lld", n);
#endif
А Codeforces радить замість printf використовувати cout.

Поза форумом

 

Нижній колонтитул

Powered by Likt
© Copyright 2002–2009 Likt