标签:des style blog http color java os io
先上题目:
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/65536 K (Java/Others)
Total Submission(s): 332 Accepted Submission(s): 106
1 #include <cstdio> 2 #include <cstring> 3 #include <string> 4 #include <algorithm> 5 #define MAX 10002 6 #define PUTS(M,x) for(int k=0;k<M;k++) putchar(x) 7 #define ll long long 8 using namespace std; 9 10 char c[MAX]; 11 int l; 12 ll a[MAX]; 13 char ss[MAX<<4][20]; 14 int len[MAX]; 15 int tot; 16 typedef struct{ 17 ll fz,fm; 18 }fs; 19 20 fs A[3],p; 21 22 void cons(int l){ 23 if(c[0]==‘L‘){ 24 a[0]=0; a[1]=2; tot=1; 25 }else{ 26 a[0]=2; tot=0; 27 } 28 for(int i=1;i<l;i++){ 29 if(c[i]==c[i-1]) a[tot]++; 30 else{ 31 a[tot]--; 32 a[++tot]=2; 33 } 34 } 35 tot++; 36 } 37 38 int main() 39 { 40 int M; 41 //freopen("data.txt","r",stdin); 42 while(scanf("%s",c)!=EOF){ 43 l=strlen(c); 44 // A[0].fz=0; A[0].fm=1; 45 // A[1].fz=1; A[1].fm=1; 46 // A[2].fz=1; A[2].fm=0; 47 // for(int i=0;i<l;i++){ 48 // if(c[i]==‘L‘){ 49 // A[2]=A[1]; 50 // }else{ 51 // A[0]=A[1]; 52 // } 53 // A[1].fz=A[0].fz+A[2].fz; 54 // A[1].fm=A[0].fm+A[2].fm; 55 // } 56 // tot=0; 57 // p=A[1]; 58 // while(1){ 59 // a[tot]=p.fz/p.fm; 60 // sprintf(ss[tot],"%I64d",a[tot]); 61 // tot++; 62 // p.fz=p.fz%p.fm; 63 // if(p.fz==0) break; 64 // else if(p.fz==1){ 65 // a[tot]=p.fm; 66 // sprintf(ss[tot],"%I64d",a[tot]); 67 // tot++; 68 // break; 69 // } 70 // swap(p.fz,p.fm); 71 // } 72 cons(l); 73 for(int i=0;i<tot;i++) sprintf(ss[i],"%I64d",a[i]); 74 len[tot-1]=strlen(ss[tot-1]); 75 len[tot-2]=strlen(ss[tot-2]) + 3 + strlen(ss[tot-1]); 76 for(int i=tot-3;i>=0;i--){ 77 len[i]=strlen(ss[i]) + 3 + len[i+1]; 78 } 79 80 // for(int i=0;i<tot;i++) printf("%I64d ",a[i]); 81 // printf("\n"); 82 // for(int i=0;i<tot;i++) printf("%d ",len[i]); 83 // printf("\n"); 84 M=len[0]; 85 for(int i=0;i<tot-1;i++){ 86 PUTS(M-1,‘ ‘); putchar(‘1‘); putchar(‘\n‘); 87 PUTS(M-len[i],‘ ‘); 88 printf("%s + ",ss[i]); 89 PUTS(len[i+1],‘-‘); 90 putchar(‘\n‘); 91 } 92 PUTS(M-(int)strlen(ss[tot-1]),‘ ‘); 93 printf("%s",ss[tot-1]); 94 printf("\n"); 95 } 96 return 0; 97 }
HDU - 3556 - Continued Fraction,布布扣,bubuko.com
HDU - 3556 - Continued Fraction
标签:des style blog http color java os io
原文地址:http://www.cnblogs.com/sineatos/p/3917222.html