注意:两个数之间的最简分数,是不包括这两个数的,否则测试点2过不了
#include<iostream>
using namespace std;
int gcd(int a,int b){
return b==0?a:gcd(b,a%b);
}
int main(){
int n1,m1,n2,m2,k;
scanf("%d/%d %d/%d %d",&n1,&m1,&n2,&m2,&k);
if(n1*m2>n2*m1){
swap(n1,n2);
swap(m1,m2);
}
int n=1,m=k;
while(n*m1<=n1*m) n++; //注意是<=
bool flag=true;
while(n*m2<n2*m){ //注意是<
if(gcd(n,m)==1){
if(!flag) printf(" ");
printf("%d/%d",n,m);
flag=false;
}
n++;
}
return 0;
}