面试题】如何将两截木棍切割为等长的100段子木棍,并且子木棍长度最大

两根木棍A和B,长度分别是len1,len2,要求通过分割得到100份等长的子木棍。子木棍的长度要最大。
[b]问题补充:[/b]
是要求用代码实现的。

要书写代码?

我是这样想的,算出短的一根占长的一根的比例是多少
比如说短的是长的1/3,那么分4分,每分25个,从短的木棍上截取25份,剩下的75份从长的上面解取.

我的意思就是短的那根肯定是全部都截取,再按指定比例再截取长的部分,这样长的剩下的部分肯定是最短的.

public static int a(int a,int b){
boolean boo=true;
int length=0;
while(boo){
if(a>=b){
int count=a%b;
if(count==0){
length=b;
boo=false;
}
else{
int aa=a;
int bb=b;
a=bb;b=aa%bb;
}
}
if(b>=a){
int count=b%a;
if(count==0){
length=a;
boo=false;
}
else{
int aa=a;
int bb=b;
b=bb%aa;
}
}
}
return length;
}

调用a(len1,len2);其实就是算最大公约数