結果
問題 | No.105 arcの六角ボルト |
ユーザー | LayCurse |
提出日時 | 2014-11-27 14:06:54 |
言語 | C++11 (gcc 11.4.0) |
結果 |
RE
|
実行時間 | - |
コード長 | 960 bytes |
コンパイル時間 | 1,973 ms |
コンパイル使用メモリ | 158,824 KB |
実行使用メモリ | 6,816 KB |
最終ジャッジ日時 | 2024-06-11 04:10:40 |
合計ジャッジ時間 | 2,230 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge5 |
(要ログイン)
ソースコード
#include<bits/stdc++.h> using namespace std; #define REP(i,a,b) for(i=a;i<b;i++) #define rep(i,n) REP(i,0,n) #define RAND (rand()/(RAND_MAX+1.0)) int main(){ int i, j, k; int T; int ind[6] = {0,1,2,3,4,5}; double X[6], Y[6]; double pi = acos(0) * 2; double res, err; FILE *in = fopen("input.txt", "w"); FILE *out= fopen("output.txt", "w"); srand(99); T = 5000; fprintf(in,"%d\n",T); while(T--){ res = RAND * 50; if(RAND < 0.01) res = 0; rep(i,6){ X[i] = cos( (res + 60*i) * pi / 180 ); Y[i] = sin( (res + 60*i) * pi / 180 ); err = RAND * 1e-12; if(RAND < 0.5) X[i] += err; else X[i] -= err; err = RAND * 1e-12; if(RAND < 0.5) Y[i] += err; else Y[i] -= err; } random_shuffle(ind, ind+6); fprintf(in,"\n"); rep(i,6) fprintf(in,"%.16f %.16f\n", X[ind[i]], Y[ind[i]]); fprintf(out,"%.16f\n",res); } return 0; }