|
|
back to boardУже сдаюсь. Но моём компе нормально, здесь WA. Posted by Tom 3 Apr 2013 03:20 Здравствуйте! Никак не могу понять где у меня проблема. На домашнем компьютере всё нормально работает, но здесь постоянно выдаёт WA. Спасибо #include <stdio.h> #include <math.h> int main(void) { long num; long double arr[100000]; int position = 0; int asnwer; while ( ( asnwer = scanf("%lu", &num)) != EOF ) { if ( asnwer == 1 ) { arr[position] = num; position++; } } position--; while (position >= 0) { printf("%.4f\n", sqrt( arr[position] )); position--; } //getchar(); return 0; } Re: Уже сдаюсь. Но моём компе нормально, здесь WA. 1. Your code is compiler-dependent: long == int on some compilers, so never use it. Use int or long long explicitly 2. Why do you think 100000 array is enough? Re: Уже сдаюсь. Но моём компе нормально, здесь WA. Posted by Tom 3 Apr 2013 22:52 Thank you for your answer. 1) Ok, i made it. 2) Actually if i try to raise after 100.000 i get "Runtime error (stack overflow)". So maybe there is some another trick i didn't get. Best regards Re: Уже сдаюсь. Но моём компе нормально, здесь WA. Use global array to avoid stack overflow |
|
|