Грабли: различия между версиями

Материал из Олимпиадное программирование в УлГТУ
Перейти к навигации Перейти к поиску
Нет описания правки
Нет описания правки
Строка 27: Строка 27:
* [http://codeforces.ru/blog/entry/15782 Codeforces — Problem with GNU C++ compiler]
* [http://codeforces.ru/blog/entry/15782 Codeforces — Problem with GNU C++ compiler]
* [http://codeforces.ru/contest/385/submission/5789899 #5789899] vs [http://codeforces.ru/contest/385/submission/5798105 #5798105]
* [http://codeforces.ru/contest/385/submission/5789899 #5789899] vs [http://codeforces.ru/contest/385/submission/5798105 #5798105]
=== В <ctype.h> функции классификации символов (такие как isupper()) могут возвращать не только 0 и 1 ===
* [http://ideone.com/GUKcBa ideone.com/GUKcBa]

Версия от 09:14, 7 марта 2016

cin/cout работает медленнее scanf/printf

endl сбрасывает буфер вывода после перевода строки

Вещественные числа нужно использовать с осторожностью; функции <math.h> работают с вещественными числами

Если не хватает точности double

  1. Меняем все double на long double;
  2. Меняем все вызовы cstdio (scanf/printf) на вызовы iostream (cin/cout);
  3. Добавляем l ко всем функциям cmath (sqrt -> sqrtl, atan2 -> atan2l);
  4. Сдаём под g++.

В <math.h> Visual C++ уже заняты глобальные имена j0, j1, jn, y0, y1, yn

Метод .size() у контейнеров STL возвращает беззнаковое число

В <ctype.h> функции классификации символов (такие как isupper()) могут возвращать не только 0 и 1