#include <iostream.h> #include <fstream.h> ifstream f("String.in"); #define cin f #include <string.h> int main() { char a[1000],b[1000],temp[1000]; while(cin>>a) { int total=0; int sum,i,j,k; if(strcmp(a,"-1")==0) return 0; cin>>b; cout<<"appx("<<a<<","<<b<<") = "; if(strlen(a)<strlen(b)) { strcpy(temp,a); strcpy(a,b); strcpy(b,temp); } for(i=0;i<strlen(a);i++) { //sum=0; for(j=0;j<strlen(b);j++) { sum=0; for(k=j;k<strlen(b);k++) { if(k+i-j<strlen(a)) { if(a[i+k-j]==b[k]) sum++; } } if(sum>total) total=sum; } } if(total==0) cout<<total<<endl; else if(total*2==strlen(a)+strlen(b)) cout<<"1"<<endl; else { int m=total*2; int n=strlen(a)+strlen(b); for(i=2;i<=n;i++) { while(n%i==0 && m%i==0) { n=n/i; m=m/i; } } cout<<m<<"/"<<n<<endl; } } }

评论