Я новичок, и это моя первая проблема на Code Chef. Я запускаю свой код на своей машине, и он отлично работает, но после того, как я отправлю его на Code chef, я получаю эту ошибку Runtime Error (SIGSEGV). Я использую слишком много памяти для проблемы, или я неправильно вношу входные данные?Ошибка выполнения (SIGSEGV) для кода в CodeChef
Вот мой код,
#include <iostream>
#include <stdio.h>
using namespace std;
#include <math.h>
#define D(a,b) fabs(a-b)
#define Q(x1,y1) (sqrt((x1)*(x1)+(y1)*(y1)))
#define min(a,b) (a>b?a:b)
#include <cstdlib>
int main()
{
long int i,k,testno,cones;
double N[1000],dmid,r,R,x1,y1,temp=0;
cin >> testno;
for(i=0;i<testno;i++){
cin >> r >> R;
dmid=D(r,R)/2;
cin >> cones;
for(k=0;k<3;k++){
cin >> x1 >> y1;
if(Q(x1,y1)>dmid){
N[k]= R-Q(x1,y1);
}
else{
N[k]=Q(x1,y1)-r;
}
}
for(k=0;k<cones-1;k++){
temp=min(N[k],N[k+1]);
}
printf("%.3f",temp);
cout << endl;
}
return 0;
}
И ссылка на вопрос: http://www.codechef.com/problems/COURSE EDIT: Брус поверить, что я сделал такую смешную ошибку. В любом случае, я отредактировал код, но все равно получаю ту же ошибку.
Вы не просматриваете значения r и R! – Nullpointer
Что вы узнали при отладке кода? Неинициализированные значения переменных? –
@ πάντα ῥεῖ Я получал это изначально для массива N, но после присвоения ему размера я не получил эту ошибку. – Timelapse