結果

問題 No.132 点と平面との距離
コンテスト
ユーザー testestest
提出日時 2016-03-18 08:10:10
言語 C90(gcc12)
(gcc 12.4.0)
コンパイル:
gcc-12 -O2 -std=c90 -DONLINE_JUDGE -o a.out _filename_ -lm
実行:
./a.out
結果
AC  
実行時間 46 ms / 5,000 ms
コード長 295 bytes
記録
記録タグの例:
初AC ショートコード 純ショートコード 純主流ショートコード 最速実行時間
コンパイル時間 267 ms
コンパイル使用メモリ 30,280 KB
最終ジャッジ日時 2026-02-23 20:57:19
ジャッジサーバーID
(参考情報)
judge5 / judge1
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
other AC * 3
権限があれば一括ダウンロードができます
コンパイルメッセージ
main.c:2:37: warning: data definition has no type or storage class
    2 | double x[301],y[301],z[301],p,q,r,s;k=-1,j;main(i){for(gets(&i);++j<k?p=f(y,z)q=f(z,x)r=f(x,y)s+=fabs(p*(*x-x[k])+q*(*y-y[k])+r*(*z-z[k]))/sqrt(p*p+q*q+r*r):(j=++i,i<k)?:(i=!++k,~scanf("%lf%lf%lf",x+k,y+k,z+k)););k=!printf("%f",s);}
      |                                     ^
main.c: In function ‘main’:
main.c:2:98: warning: incompatible implicit declaration of built-in function ‘fabs’ [-Wbuiltin-declaration-mismatch]
    2 | double x[301],y[301],z[301],p,q,r,s;k=-1,j;main(i){for(gets(&i);++j<k?p=f(y,z)q=f(z,x)r=f(x,y)s+=fabs(p*(*x-x[k])+q*(*y-y[k])+r*(*z-z[k]))/sqrt(p*p+q*q+r*r):(j=++i,i<k)?:(i=!++k,~scanf("%lf%lf%lf",x+k,y+k,z+k)););k=!printf("%f",s);}
      |                                                                                                  ^~~~
main.c:1:1: note: include ‘<math.h>’ or provide a declaration of ‘fabs’
  +++ |+#include <math.h>
    1 | #define f(x,y)(x[j]-x[k])*(y[i]-y[k])-(y[j]-y[k])*(x[i]-x[k]),
main.c:2:140: warning: incompatible implicit declaration of built-in function ‘sqrt’ [-Wbuiltin-declaration-mismatch]
    2 | double x[301],y[301],z[301],p,q,r,s;k=-1,j;main(i){for(gets(&i);++j<k?p=f(y,z)q=f(z,x)r=f(x,y)s+=fabs(p*(*x-x[k])+q*(*y-y[k])+r*(*z-z[k]))/sqrt(p*p+q*q+r*r):(j=++i,i<k)?:(i=!++k,~scanf("%lf%lf%lf",x+k,y+k,z+k)););k=!printf("%f",s);}
      |                                                                                                                                            ^~~~
main.c:2:140: note: include ‘<math.h>’ or provide a declaration of ‘sqrt’
main.c:2:180: warning: incompatible implicit declaration of built-in function ‘scanf’ [-Wbuiltin-declaration-mismatch]
    2 | double x[301],y[301],z[301],p,q,r,s;k=-1,j;main(i){for(gets(&i);++j<k?p=f(y,z)q=f(z,x)r=f(x,y)s+=fabs(p*(*x-x[k])+q*(*y-y[k])+r*(*z-z[k]))/sqrt(p*p+q*q+r*r):(j=++i,i<k)?:(i=!++k,~scanf("%lf%lf%lf",x+k,y+k,z+k)););k=!printf("%f",s);}
    

ソースコード

diff #
raw source code

#define f(x,y)(x[j]-x[k])*(y[i]-y[k])-(y[j]-y[k])*(x[i]-x[k]),
double x[301],y[301],z[301],p,q,r,s;k=-1,j;main(i){for(gets(&i);++j<k?p=f(y,z)q=f(z,x)r=f(x,y)s+=fabs(p*(*x-x[k])+q*(*y-y[k])+r*(*z-z[k]))/sqrt(p*p+q*q+r*r):(j=++i,i<k)?:(i=!++k,~scanf("%lf%lf%lf",x+k,y+k,z+k)););k=!printf("%f",s);}
0