ENG  RUSTimus Online Judge
Online Judge
Задачи
Авторы
Соревнования
О системе
Часто задаваемые вопросы
Новости сайта
Форум
Ссылки
Архив задач
Отправить на проверку
Состояние проверки
Руководство
Регистрация
Исправить данные
Рейтинг авторов
Текущее соревнование
Расписание
Прошедшие соревнования
Правила
вернуться в форум

Обсуждение задачи 1001. Обратный корень

Ошибка на первом же тесте, а на моих числах все работает
Послано Rami 13 июн 2013 15:31
#include <iostream>;
#include <vector>;

using namespace std;

int main()
{
    vector<int> v;
    int n;
    while (std::cin >> n)
        v.push_back(n);

    int i;
    for(i = v.size() - 1; i>=0; i--)
        printf("%.4f\n", sqrt((double) (v[i])));

    system("pause");
    return 0;
}

P.S.
А тесты на которых проверяются программы можно увидеть?
Re: Ошибка на первом же тесте, а на моих числах все работает
Послано Vedernikoff 'Goryinyich' Sergey (HSE: АОП) 15 июн 2013 03:18
Hey dude, did you read FAQ?
Why did you decide to include system("pause") in your code? Do you think it will help testing system to check your code???
Re: Ошибка на первом же тесте, а на моих числах все работает
Послано Rami 16 июн 2013 16:21
I delete it when I check, but forget to delete, when copy it here

Edited by author 16.06.2013 16:22

Edited by author 16.06.2013 16:22

Edited by author 16.06.2013 16:22
Ты вроде Сергей, почему по русски не ответил?

Edited by author 16.06.2013 16:23
Re: Ошибка на первом же тесте, а на моих числах все работает
Послано Pizhon 17 июн 2013 14:16
У меня тоже самое: в консоли числа совпадают с ответом для первого теста, а в результатах проверки Wrong answer
Re: Ошибка на первом же тесте, а на моих числах все работает
Послано Rami 18 июн 2013 01:00
У меня сейчас немного изменилось положение, я понял, что не совсем понимаю, как должен заканчиваться поток данных. Я например его завершаю нажатием ctrl+z, понятия не имею откуда я это знаю, видно некоторые знания в университете попадают в голову в не зависимости от моего желания) Так вот, я обычно тестил и завершал этим, а сейчас ввожу первую строку ,потом вторую допустим
4444444444
   4444444444444
и поток завершается сам собой, причем ответ только для одного числа, т.е. ошибку вроде нашел, но как с ней бороться не знаю.
Re: Ошибка на первом же тесте, а на моих числах все работает
Послано Alexey Dergunov [Samara SAU] 18 июн 2013 14:36
Use files to test your program locally
Re: Ошибка на первом же тесте, а на моих числах все работает
Послано Pizhon 19 июн 2013 14:17
I used files for testing and got an error in the first test. My answer is the same as in example. Also I used in my testing text from example.
Re: Ошибка на первом же тесте, а на моих числах все работает
Послано Alexander 20 авг 2013 19:38
Вот мой код. Замени int на double в векторе и n

#include <stdio.h>
#include <conio.h>
#include <algorithm>
#include <iostream>
#include <iomanip>
#include <math.h>
#include <vector>
#include <set>
#include <map>
#include <queue>
#include <deque>
#include <string>

using namespace std;

int gcd (int a, int b){
    return (b)? gcd(b,a % b) : a;
}

int lca (int a, int b){
    return a / gcd(a,b) * b;
}

int main()
{
    vector <long double> a;
    long double n = 5.0;
    while(cin >> n)
        a.push_back(n);

    for(int i = a.size() - 1;i >= 0; --i)
        cout << fixed << setprecision(4) << pow(double(a[i]), 0.5) << endl;
    return 0;
}
Re: Ошибка на первом же тесте, а на моих числах все работает
Послано Alexey 19 окт 2013 23:56
Первый тест - это ввод исходных данных из примера и ожидание вывода результата примера.
А число 876652098643267843 уже больше значений типа int. Поэтому первый тест ломается уже на сканировании этого числа в переменную n.

876652098643267843 влазит в тип long long int