Всем привет, можете пожалуйста подсказать, почему программа отвечает "nan" на эту задачу(4 тест) http://mirror.codeforces.com/contest/671/problem/A
№ | Пользователь | Рейтинг |
---|---|---|
1 | tourist | 4009 |
2 | jiangly | 3823 |
3 | Benq | 3738 |
4 | Radewoosh | 3633 |
5 | jqdai0815 | 3620 |
6 | orzdevinwang | 3529 |
7 | ecnerwala | 3446 |
8 | Um_nik | 3396 |
9 | ksun48 | 3390 |
10 | gamegame | 3386 |
Страны | Города | Организации | Всё → |
№ | Пользователь | Вклад |
---|---|---|
1 | cry | 167 |
2 | Um_nik | 163 |
3 | maomao90 | 162 |
3 | atcoder_official | 162 |
5 | adamant | 159 |
6 | -is-this-fft- | 158 |
7 | awoo | 157 |
8 | TheScrasse | 154 |
9 | Dominater069 | 153 |
9 | nor | 153 |
Всем привет, можете пожалуйста подсказать, почему программа отвечает "nan" на эту задачу(4 тест) http://mirror.codeforces.com/contest/671/problem/A
Название |
---|
Покажи код)
Варианты -- корень из отрицательного числа, деление 0 на 0, или что-нибудь подобное.
http://ideone.com/xxkYG0
Координаты переполняются при вычислении dist. Они до 10^9 а ты их возводишь в квадрат.
Если считать dist в даблах или лонгах, то все ок 17979127
Спасибо ;)
У программирующих на java(у меня) при делении какого-то конткретного числа(значения примитивного типа) на нуль,генерируется исключение(объект) типа класса ArethmaticException,но ни как не NaN.
NaN выводится на консоль,если было произведена операция нахождения корня отрицательного числа и т.д.
P.S:По правде говоря,я точно не знаю когда и в каком случаи генерируеться NaN на консоли,если писать ошибочные операции на языках помимо java.
Попробуй
значение в f и q — NaN. s — Infinity. Важно, что они double.
Стандарт чисел с плавающей точкой используется одинаковый, что в плюсах, что в джаве.
q не работает по той же причине, что и в посте -- переполнение приводит к отрицательному числу (правда в java это наверное более определенная операция, чем в плюсах, не уверен)
Только не "nan",а "NaN"
Ок)