#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #define pb push_back #define mp make_pair #define TASKNAME "" #ifdef LOCAL #define eprintf(...) fprintf(stderr,__VA_ARGS__) #else #define eprintf(...) #endif #define TIMESTAMP(x) eprintf("[" #x "] Time = %.3lfs\n",clock()*1.0/CLOCKS_PER_SEC) #ifdef linux #define LLD "%lld" #else #define LLD "%I64d" #endif #define sz(x) ((int)(x).size()) #define strstr strstr_wregthrtu using namespace std; typedef long double ld; typedef long long ll; typedef vector vll; typedef vector vi; typedef vector vvi; typedef vector vb; typedef vector vvb; typedef pair pii; typedef pair pll; typedef pair pld; const int inf = 1e9; const double eps = 1e-9; const double INF = inf; const double EPS = eps; //BEGIN ALGO struct cd{ld x,y;}; const int n = 19; const int m = (1<>2; h=m>>1; for (i=0; i<=(m>>3); i++) /*BOXNEXT*/ tb=ta*i, si[q-i]=cos(tb), si[i]=sin(tb); for (i=1; i<=q; i++) si[q+i] = si[q-i]; for (i=0; i<=q; i++) si[h+i]=-si[i]; } void step (int k, cd *from, cd *to, ld kk) { int st=m>>k, cc=st, dd=0, i; cd t, u, v, r; r.x=1.0; r.y=0.0; for (i=0; i=0; i--) if (i==0 || len || z[i]>0) s[len++]=z[i]+'0'; printf("%s\n", s); TIMESTAMP(end); return 0; }