8 条题解
-
0
三目运算的话代码更短
#include<string.h> int gcd(int x,int y){ if(y==0)return x; else return gcd(y,x%y); } int main(){ int a,b,c,d; char sb; while(scanf("%d/%d%c%d/%d",&a,&b,&sb,&c,&d)!=EOF){ int z; int m; if(sb=='+'){ z=a*d+b*c; } if(sb=='-'){ z=a*d-b*c; } m=b*d; if(z==0){ printf("0\n"); continue; } int g; if(z>0){ g=gcd(z,m); } if(z<0){ g=gcd(-z,m); } z/=g; m/=g; if(m==1){ printf("%d\n",z); } else{ printf("%d/%d\n",z,m); } } return 0; }
信息
- ID
- 168
- 时间
- 3000ms
- 内存
- 128MiB
- 难度
- 7
- 标签
- (无)
- 递交数
- 773
- 已通过
- 180
- 上传者